新闻详情

新闻详情

首页 / 资讯中心 / 详情

Java 调用京东商品详情接口全攻略(2026 版)

发布时间:2026/9/26 14:15:57来源:尧图网络
Java 调用京东商品详情接口全攻略(2026 版)
在电商数据对接、比价工具、选品分析等场景中获取京东商品详情是最常见的需求。本文基于 2026 年京东开放平台的最新规则系统讲解Java 调用京东商品详情接口的完整流程从接口选型、签名鉴权、完整代码实现到高频避坑。一、先分清两套 API选对方向京东商品详情接口分为两大体系调用前先判断自己属于哪类用户对比项京东联盟 API宙斯 JOS 商家 API面向人群个人、CPS 推广者、比价工具有自有京东店铺的商家/ERP 服务商核心接口jd.union.open.goods.detail.queryjingdong.item.read.get数据特点含佣金、优惠券、券后价数据最全真实库存、售后、内部价门槛个人实名认证即可企业认证 店铺授权限制未参加联盟的商品查不到只能查自己店铺的商品统一调用网关https://api.jd.com/routerjsonPOST如果你没有京东店铺只想做比价、选品、导购直接选京东联盟 API即可。二、接入准备注册与认证在京东联盟官网注册媒体账号完成个人实名认证。创建应用进入「开发者管理」创建应用获取AppKey和AppSecret密钥务必存服务器禁止暴露到前端。申请权限申请商品详情 API 权限填写用途比价/选品/导购一般当天审核通过。三、签名机制90% 的调用失败都源于签名错误签名流程将所有请求参数除 sign 本身按ASCII 升序排序拼接成key1value1key2value2...再使用 AppSecret 做HMAC-SHA256加密并转大写。常见错误码速查401签名错误、403权限不足、10003限流、1004AppKey 无效。四、Maven 依赖dependency groupIdorg.apache.httpcomponents/groupId artifactIdhttpclient/artifactId version4.5.14/version /dependency dependency groupIdcom.alibaba/groupId artifactIdfastjson/artifactId version2.0.53/version /dependency五、Java 完整实现5.1 签名工具类package com.example.jdapi.util; import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; import java.util.Map; import java.util.TreeMap; public class JdSignUtil { /** * 京东联盟签名参数 ASCII 升序拼接 HmacSHA256 转大写 */ public static String sign(MapString, String params, String appSecret) throws Exception { // TreeMap 天然按 key 字典序ASCII排序 MapString, String sorted new TreeMap(params); StringBuilder raw new StringBuilder(); for (Map.EntryString, String entry : sorted.entrySet()) { String key entry.getKey(); String value entry.getValue(); // 跳过空值与 sign 本身 if (key.equals(sign) || value null || value.isEmpty()) { continue; } raw.append(key).append(value); } Mac mac Mac.getInstance(HmacSHA256); mac.init(new SecretKeySpec(appSecret.getBytes(UTF-8), HmacSHA256)); byte[] digest mac.doFinal(raw.toString().getBytes(UTF-8)); StringBuilder sb new StringBuilder(); for (byte b : digest) { sb.append(String.format(%02x, b)); } return sb.toString().toUpperCase(); } }5.2 商品详情 API 客户端package com.example.jdapi.client; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.example.jdapi.util.JdSignUtil; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpPost; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.util.EntityUtils; import java.util.HashMap; import java.util.Map; public class JdGoodsApiClient { private static final String API_URL https://api.jd.com/routerjson; private final String appKey; private final String appSecret; private final CloseableHttpClient httpClient HttpClients.createDefault(); public JdGoodsApiClient(String appKey, String appSecret) { this.appKey appKey; this.appSecret appSecret; } /** * 查询商品详情京东联盟 * * param skuIds 商品 SKU ID支持多个逗号分隔批量最多 20 个 */ public JSONObject queryGoodsDetail(String skuIds) throws Exception { // 1. 公共参数 MapString, String params new HashMap(); params.put(app_key, appKey); params.put(method, jd.union.open.goods.detail.query); params.put(timestamp, String.valueOf(System.currentTimeMillis())); params.put(format, json); params.put(v, 2.0); // 2. 业务参数指定字段可减少响应体积、提升速度 JSONObject goodsReq new JSONObject(); goodsReq.put(skuIds, skuIds); goodsReq.put(fields, skuId,name,price,mainImg,stock,monthSales,promotionInfo); params.put(goods_req, goodsReq.toJSONString()); // 3. 生成签名 params.put(sign, JdSignUtil.sign(params, appSecret)); // 4. 发送 POST 请求 HttpPost post new HttpPost(API_URL); post.setEntity(new StringEntity(JSON.toJSONString(params), application/json)); post.setHeader(Content-Type, application/json); try (CloseableHttpResponse response httpClient.execute(post)) { String body EntityUtils.toString(response.getEntity(), UTF-8); JSONObject result JSON.parseObject(body); // 5. 统一错误处理 if (result.containsKey(error_response)) { JSONObject err result.getJSONObject(error_response); throw new RuntimeException( 调用失败: err.getString(msg) (code err.getString(code) )); } return result; } } public static void main(String[] args) throws Exception { JdGoodsApiClient client new JdGoodsApiClient(你的AppKey, 你的AppSecret); JSONObject result client.queryGoodsDetail(100012345678); System.out.println(result.toJSONString()); } }5.3 响应示例{ jd_union_open_goods_detail_query_response: { code: 0, result: { goodsInfo: { skuId: 100012345678, title: Apple iPhone 17 Pro 256GB, lowPrice: 8999.00, monthSales: 5200, mainImg: https://img10.360buyimg.com/..., promotionInfo: 满8000减500 } } } }六、调用频率限制2026 官方标准京东联盟基础权限QPS ≤ 10 次/秒日上限 5000 次高级权限可提升至 QPS ≤ 20、日上限 10 万。商家 JOS个人/基础账号 QPS ≤ 2企业账号默认 5 QPS可申请至 50 QPS。批量接口单次最多 20 个 SKU注意 1 次批量调用按 20 次单品调用计数。七、高频避坑指南签名失败排査时间戳必须是毫秒级误差需在有效期内参数值含空格或空值参与拼接会破坏签名排序必须严格按 ASCII 升序。限流应对生产环境加请求间隔建议 ≥1 秒 本地缓存 失败退避重试不要粗暴并发打满 QPS。批量查询分批一次最多 20 个 SKU超过要分批处理。合规红线严禁爬取售卖数据、绕链引流或伪造商品信息密钥放服务端前端绝不暴露。按需指定 fields只取需要的字段能显著减小响应体积并提升接口速度。八、总结Java 接入京东商品详情接口的核心就三步申请密钥 → HmacSHA256 签名 → POST 到 routerjson 网关。把签名工具类封装好、错误码处理好、限流做平滑一个稳定可靠的京东商品数据服务就搭建完成了。如果是商家自建 ERP则切换到jingdong.item.read.get体系并额外携带 OAuth2 的access_token即可整体签名逻辑保持一致。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

工业AI Agent工程化落地:从数据采集到MCP协议,2026分水岭的实操路径 2026/9/26 14:15:51

工业AI Agent工程化落地:从数据采集到MCP协议,2026分水岭的实操路径

1. 工厂里的AI Agent到底在干什么活 很多人第一次听到"AI Agent进工厂",脑子里浮现的画面是机械臂自己思考、产线自己调度。实际落地完全不是这么回事。我在制造业信息化这行摸爬滚打十来年,见过太多项目把"智能体"三个字贴在PPT上&…

阅读更多 →
如何为Spirula Studio添加自定义数据集预设与批量处理流水线 2026/9/26 14:15:51

如何为Spirula Studio添加自定义数据集预设与批量处理流水线

如何为Spirula Studio添加自定义数据集预设与批量处理流水线 【免费下载链接】spirula-studio Cross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA. 项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studio Spirula Stud…

阅读更多 →
预测性资产维护入门套件:英特尔优化版XGBoost源码包实战 2026/9/26 14:15:51

预测性资产维护入门套件:英特尔优化版XGBoost源码包实战

简介:这份资源是面向AI初学者与运维工程师的预测性资产维护入门套件,围绕英特尔优化版XGBoost展开,帮助读者把机器学习落地到设备故障预测与健康管理场景。压缩包共59个文件,约504KB,以日志、PNG图表、Python脚本、Mar…

阅读更多 →
从16个粉丝到千万美金ARR:拆解AI读资料聊天机器人的技术架构与增长路径 2026/9/26 14:15:51

从16个粉丝到千万美金ARR:拆解AI读资料聊天机器人的技术架构与增长路径

1. 从16个粉丝到千万美金ARR:这个案例真正值得拆解的是什么 第一次看到这个案例的时候,我盯着"16个粉丝"和"1000万美元年化收入"这两个数字看了很久。不是因为数字本身有多震撼——AI赛道这两年造富故事不少——而是因为这两个数字之…

阅读更多 →
AI智能体开发平台与传统聊天机器人的本质区别及实操指南 2026/9/26 14:15:51

AI智能体开发平台与传统聊天机器人的本质区别及实操指南

1. 从“问答机”到“执行者”:AI智能体开发平台到底改变了什么很多人第一次接触“AI智能体”这个词,脑子里浮现的还是那种一问一答的聊天窗口——你问一句,它回一句,问多了它还忘。这个印象不算错,但已经严重过时了。我…

阅读更多 →
IntelliJ IDEA旧版本官方下载与校验全指南 2026/9/26 14:15:45

IntelliJ IDEA旧版本官方下载与校验全指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉