不限量免费快递查询API-JAVA对接文档_第1页
不限量免费快递查询API-JAVA对接文档_第2页
不限量免费快递查询API-JAVA对接文档_第3页
不限量免费快递查询API-JAVA对接文档_第4页
不限量免费快递查询API-JAVA对接文档_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、不限量免费快递查询API-JAVA对接文档1.1 接口规则 (1)、客户服务器必须稳定,并且有一定的接受数据能力。接口通过多线程推送物流信息给客户。 (2)、客户需要按要求开发接口,保证信息的正常接收。客户接数据后,存储并马上返回接收响应。如果客户对数据进行处理,再做出响应。这会造成网络超时,传输效率低下。(3)、主动推送时物流信息接收接口由客户提供,接口必须按照要求实现。(4)、接口提供:快递鸟 (5)、在快递鸟接口调试平台输入回调地址。 (6)、接口只支持Json数据格式。 (7)、POS方式请求。1.2 系统级输入参数参数名称类型必须要求说明RequestDataStringR推送数据经

2、url转码utf-8 RequestTypeStringR101-轨迹查询结果, 107-货款状态1.3 应用级输入参数参数名称类型必须要求说明EBusinessIDStringR用户电商IDPushTimeStringR推送时间CountStringR推送物流单号轨迹个数DataStringR推送物流单号轨迹集合1.3.1 订阅查询结果(RequestType:101)通过轨迹查询(订阅查询)接口订阅到快递鸟的数据,快递鸟推送时,会将推送的RequestType的值置为101,同时返回下列数据参数名称类型必须要求说明ResponseEBusinessIDStringO电商用户IDOrderC

3、odeStringO订单编号ShipperCodeStringR快递公司编码LogisticCodeStringR物流运单号SuccessBoolR成功与否ReasonStringO失败原因StateStringR物流状态:0-无轨迹1-已揽收2-在途中201-到达派件城市3-签收4-问题件CallBackStringO订阅接口的Bk值TracesStringR物流轨迹详情EstimatedDeliveryTimeStringO预计到达时间yyyy-mm-ddPickerInfoObjectO收件员信息SenderInfoObjectO派件员信息注:通过订单分发与电子面单接口自动订阅的运单,会

4、返回预计达到时间,收派件人员网点信息,当前快件所在省市等字段参数名称类型必须要求说明TracesAcceptTimeStringR时间AcceptStationStringR描述RemarkStringO备注参数名称类型必须要求说明PickerInfoPersonNameStringO快递员姓名PersonTelStringO快递员电话PersonCodeStringO快递员工号StationNameStringO网点名称StationAddressStringO网点地址StationTelStringO网点电话参数名称类型必须要求说明SenderInfoPersonNameStringO派件

5、快递员姓名PersonTelStringO派件快递员电话PersonCodeStringO派件快递员工号StationNameStringO派件网点名称StationAddressStringO派件网点地址StationTelStringO派件网点电话1.3.2 货款状态(RequestType:107)用户通过电子面单使用货到付款等金融服务时,快递鸟会将该订单的金融状态通过接口推送给用户。参数名称类型必须要求说明ResponseEBusinessIDStringO电商用户IDOrderCodeStringO订单编号ShipperCodeStringR快递公司编码LogisticCodeStr

6、ingR物流运单号SuccessBoolR成功与否ReasonStringO失败原因StateStringR物流状态:0-无轨迹1-已揽收2-在途中201-到达派件城市3-签收4-问题件CallBackStringO订阅接口的Bk值OrderStateStringO订单货款状态:1-待出款;2-已出款;3-已收款AccountNameStringO返款银行卡开户人(例:*伟、*佳)AccountTelStringO返款银行卡手机末四位AccountNumStringO返款银行卡末四位注:通过订单分发与电子面单接口自动订阅的运单,会返回预计达到时间,收派件人员网点信息,当前快件所在省市等字段1.

7、4 返回结果参数参数名称类型必须要求说明EBusinessIDStringR用户IDUpdateTimeStringR时间SuccessStringR成功与否ReasonStringO失败原因1.5 JSON请求示例订阅查询结果示例: "EBusinessID": "1109259", "Count": "2", "PushTime": "2015-03-11 16:21:06", "Data": "EBusinessID": &quo

8、t;1109259", "OrderCode": "", "ShipperCode": "EMS", "LogisticCode": "5042260908504", "Success": true, "Reason": "", "State": "2", "CallBack": "0", "Traces":

9、 "AcceptTime": "2015-03-06 21:16:58", "AcceptStation": "深圳市横岗速递营销部已收件,(揽投员姓名:钟定基;联系电话:)", "Remark": "" , "AcceptTime": "2015-03-07 14:25:00", "AcceptStation": "离开深圳市 发往广州市", "Remark": "

10、" , "AcceptTime": "2015-03-08 00:17:00", "AcceptStation": "到达广东速递物流公司广航中心处理中心(经转)", "Remark": "" , "AcceptTime": "2015-03-08 01:15:00", "AcceptStation": "离开广州市 发往北京市(经转)", "Remark": &qu

11、ot;" , "AcceptTime": "2015-03-09 09:01:00", "AcceptStation": "到达北京黄村转运站处理中心(经转)", "Remark": "" , "AcceptTime": "2015-03-09 18:39:00", "AcceptStation": "离开北京市 发往呼和浩特市(经转)", "Remark": &qu

12、ot;" , "AcceptTime": "2015-03-10 18:06:00", "AcceptStation": "到达 呼和浩特市 处理中心", "Remark": "" , "AcceptTime": "2015-03-11 09:53:48", "AcceptStation": "呼和浩特市邮政速递物流分公司金川揽投部安排投递(投递员姓名:安长虹;联系电话&

13、quot;, "Remark": "" , "EBusinessID": "1109259", "OrderCode": "", "ShipperCode": "EMS", "LogisticCode": "5042260943004", "Success": true, "Reason": "", "State":

14、"2", "CallBack": "0", "Traces": "AcceptTime": "2015-03-07 15:26:09", "AcceptStation": "深圳市横岗速递营销部已收件,(揽投员姓名:周宏彪;联系电话", "Remark": "" , "AcceptTime": "2015-03-08 16:32:00&quo

15、t;, "AcceptStation": "离开深圳市 发往广州市", "Remark": "" , "AcceptTime": "2015-03-09 00:58:00", "AcceptStation": "到达广东速递物流公司广航中心处理中心(经转)", "Remark": "" , "AcceptTime": "2015-03-09 01:15:00"

16、;, "AcceptStation": "离开广州市 发往北京市(经转)", "Remark": "" , "AcceptTime": "2015-03-10 05:20:00", "AcceptStation": "到达北京黄村转运站处理中心(经转)", "Remark": "" , "AcceptTime": "2015-03-10 11:59:00",

17、 "AcceptStation": "离开北京市 发往廊坊市(经转)", "Remark": "" , "AcceptTime": "2015-03-10 14:23:00", "AcceptStation": "到达廊坊市处理中心(经转)", "Remark": "" , "AcceptTime": "2015-03-11 08:55:00", "

18、;AcceptStation": "离开廊坊市 发往保定市(经转)", "Remark": "" 货款状态:    "EBusinessID": "1109259",    "Count": "2",    "PushTime": "2015/3/11 16:21:06",    &quo

19、t;Data":                     "EBusinessID": "1109259",            "OrderCode": "",    

20、0;       "ShipperCode": "EMS",            "LogisticCode": "5042260908504",            "Success": true, &#

21、160;          "Reason": "",            "State": "2",            "CallBack": "0", 

22、;           "OrderState":"1",            "AccountName":"张三",            "AccountTel":"

23、quot;,            "AccountNum":"0321"        ,                    "EBusinessID&quo

24、t;: "1109259",            "OrderCode": "",            "ShipperCode": "EMS",           

25、; "LogisticCode": "5042260908522",            "Success": true,            "Reason": "",         

26、;   "State": "2",            "CallBack": "0",            "OrderState":"1",       

27、0;    "AccountName":"张三",            "AccountTel":"quot;,            "AccountNum":"0321"   &#

28、160;        1.6 JSON返回示例 "EBusinessID": "1109259", "UpdateTime": "2015-03-11 16: 26: 11", "Success": true, "Reason": ""1.7 JAVA对接代码import java.io.BufferedReader;import java.io.IOException; import java

29、.io.InputStreamReader;import java.io.OutputStreamWriter;import java.io.UnsupportedEncodingException;import .HttpURLConnection;import .URL;import .URLEncoder;import java.util.HashMap;import java.util.Map;import ernal.impl.dv.util.Base64;import java.security.MessageDigest;

30、 public class KdGoldAPIDemo /电商IDprivate String EBusinessID="1237100"/电商加密私钥,注意保管,不要泄漏,请重新申请秘钥private String AppKey="518a73d8-1f7f-441a-b644-33e77b49d846"/请求urlprivate String ReqURL="http:/api.kdniao.cc/Ebusiness/EbusinessOrderHandle.aspx" /* * Json方式 物流信息订阅 * throws Ex

31、ception */public String orderTracesSubByJson() throws ExceptionString requestData="'Code': 'SF','Item': "+ "'No': '909261024507','Bk': 'test',"+ "'No': '589554393102','Bk': 'test',"+

32、 "'No': '589522101958','Bk': 'test',"+ "'No': '909198822942', 'Bk': 'test'"+ ""Map<String, String> params = new HashMap<String, String>();params.put("RequestData", urlEncoder(requestDa

33、ta, "UTF-8");params.put("EBusinessID", EBusinessID);params.put("RequestType", "1005");String dataSign=encrypt(requestData, AppKey, "UTF-8");params.put("DataSign", urlEncoder(dataSign, "UTF-8");params.put("DataType", &quo

34、t;2");String result=sendPost(ReqURL, params);/根据公司业务处理返回的信息.return result;/* * XML方式 物流信息订阅 * throws Exception */public String orderTracesSubByXml() throws ExceptionString requestData="<?xml version="1.0" encoding="utf-8" ?>"+"<Content>"+"

35、;<Code>SF</Code>"+"<Items>"+"<Item>"+"<No>909261024507</No>"+"<Bk>test</Bk>"+"</Item>"+"<Item>"+"<No>909261024507</No>"+"<Bk>test</Bk>&q

36、uot;+"</Item>"+"</Items>"+"</Content>"Map<String, String> params = new HashMap<String, String>();params.put("RequestData", urlEncoder(requestData, "UTF-8");params.put("EBusinessID", EBusinessID);params.put(&quo

37、t;RequestType", "1005");String dataSign=encrypt(requestData, AppKey, "UTF-8");params.put("DataSign", urlEncoder(dataSign, "UTF-8");params.put("DataType", "1");String result=sendPost(ReqURL, params);/根据公司业务处理返回的信息.return result;/* * MD5

38、加密 * param str 内容 * param charset 编码方式 * throws Exception */SuppressWarnings("unused")private String MD5(String str, String charset) throws Exception MessageDigest md = MessageDigest.getInstance("MD5"); md.update(str.getBytes(charset); byte result = md.digest(); StringBuffer sb =

39、 new StringBuffer(32); for (int i = 0; i < result.length; i+) int val = resulti & 0xff; if (val <= 0xf) sb.append("0"); sb.append(Integer.toHexString(val); return sb.toString().toLowerCase();/* * base64编码 * param str 内容 * param charset 编码方式 * throws UnsupportedEncodingException *

40、/private String base64(String str, String charset) throws UnsupportedEncodingExceptionString encoded = Base64.encode(str.getBytes(charset);return encoded; SuppressWarnings("unused")private String urlEncoder(String str, String charset) throws UnsupportedEncodingExceptionString result = URLE

41、ncoder.encode(str, charset);return result;/* * 电商Sign签名生成 * param content 内容 * param keyValue Appkey * param charset 编码方式 * throws UnsupportedEncodingException ,Exception * return DataSign签名 */SuppressWarnings("unused")private String encrypt (String content, String keyValue, String charset

42、) throws UnsupportedEncodingException, Exceptionif (keyValue != null)return base64(MD5(content + keyValue, charset), charset);return base64(MD5(content, charset), charset); /* * 向指定 URL 发送POST方法的请求 * param url 发送请求的 URL * param params 请求的参数集合 * return 远程资源的响应结果 */SuppressWarnings("unused")private String sendPost(String url, Map<String, String> params) OutputStreamWriter out = null; BufferedReader in = null; StringBuilder result = new StringBuilder(); try URL realUrl = new URL(url); HttpURLConnection conn =(HttpURLConnection) realUrl.openConnection(); / 发送POST请

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论