对接京东快递查询物流信息
京东快递查询物流轨迹信息的API在2025-04-29的时候更新过,我这里使用的新的接口
通过对接方案编码可以判断,之前是ECAP,现在改为了Tracking_JD
有需要云服务器的小伙伴推荐使用雨云-新一代云服务提供商以及Q云 QVPS,都很实惠,适合长期使用
前期准备
京东物流开放平台账号并通过企业认证
第一个ISV是相对比较好认证的,我使用的就是这个
有与京东物流签约的账号(京东物流的销售开通的账号(不是物流开放平台的账号))
这个我不太清楚怎么签约,这应该是你们公司有这个账号,跟负责这个功能的岗位的人要账号就行
这个账号一定要有,否则查不出物流信息
开放平台操作
创建应用
登录京东物流开放平台后应用管理➡️创建应用➡️ISV应用,输入应用名称、应用描述,确定之后就创建成功了,过几秒会自动跳转到对接方案界面
我们点击订阅新的对接方案,找到京东物流标准轨迹服务➡️申请使用
申请之后订阅状态先在审批状态,过一会就审批通过变成订阅成功,就可以使用了
点击对接文档,选择开发工具,再选择京东物流轨迹查询通用接口,我们可以在这里使用API测试工具进行测试
这里需要填写一些必要的参数,我一一说明一下
AppKey和AppSecret在应用详情中查看
AccessToken通过点击应用详情中的授权链接登录签约账号获取,获取后会给你一个access_token和refresh_token
access_token有效期为1年,refresh_token有效期为1年1个月,在refresh_token有效期内,
- access_token临过期超过10天,调用刷新接口会固定返回原来的access_token 和 refresh_token,也就是说没有效果;
- access_token临过期10天内,调用刷新接口可以延长1年原有access_token有效期,并生成新的有效期为1年1个月的refresh_token,原refresh_token失效。
- 调用接口的完整代码在京东物流开放平台最下面
referenceNumber:京东物流单号
referenceType:单号类型,填固定值20000就行
phone:快递发送方或接收方的手机号后四位
都填好之后点击发起测试,就会调用接口查询出物流信息,code返回1000即为成功
api测试工具没问题了之后点击旁边的代码示例,里面有现成的代码,可以直接用。当然也可以自己写,因为本质上就是请求一个接口,把参数组装好就行
自行编写代码
下面这个是我根据官方的示例代码简化的,因为我当时对接的时候不止是京东,还有顺丰和德邦,用已经封装好的方法会比较好写好维护
使用前记得先引入hutool依赖
1
2
3
4
5
6 <!--hutool工具类-->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.8.11</version>
</dependency>ExpressConstants是存放静态常量的一个类,自行编写即可
1 | import cn.hutool.http.HttpRequest; |
ExpressConstants.java
1 | public class ExpressConstants |