物流跟踪API-快递单推送
上一篇文章我们讲解了订阅服务功能。我们已经完成了如何把物流订单订阅到快递鸟,快递鸟也能接收到我们的订单信息,接下来就需要快递鸟实时的将最新的物流轨迹推送到我们服务器,我们既然要接收快递鸟的信息,就需要提供一个服务地址给快递鸟,以C#为列,我们新建一个接收页面,我的接收文件: testReceive.aspx,把他部署到服务器,
接收地址:http://www.你的域名.com/testReceive.aspx
登陆快递鸟官网,通过快递鸟提供的沙箱调试页面进去测试接口
调试页面地址:
http://kdniao.com/UserCenter/v2/SandBox/PushQueryParam.aspx
测试的截图:
一、接口描述/说明
推送接口(商户实现)
(1)客户需要按快递鸟要求开发接口,保证信息的正常接收。
(2)快递鸟主动推送时,物流信息接收接口由客户提供。
(3)接口支持的消息接收方式为HTTP POST,请求方法的编码格式(utf-8):"application/x-www-form-urlencoded;charset=utf-8"。
(4)运单物流信息全量推送(每次推送的运单物流信息包括运单当前所有的的物流信息)。
请求系统级参数说明:
参数名称 |
类型 |
说明 |
必须要求 |
RequestData |
String |
请求内容需进行URL(utf-8)编码。请求内容只支持JSON格式。 |
R |
RequestType |
String |
101-轨迹查询结果, 107-货款状态 |
R |
DataSign |
String |
数据内容签名(把(请求内容(未编码)+AppKey)进行MD5加密,然后Base64编码) |
R |
备注:R-必填(Required),O-可选(Optional),C-报文中该参数在一定条件下可选(Conditional)
二、接口参数
推送接口
应用级输入参数
参数名称 |
类型 |
说明 |
必须要求 |
EBusinessID |
String |
用户电商ID |
R |
PushTime |
String |
推送时间 |
R |
Count |
String |
推送物流单号轨迹个数 |
R |
Data |
String |
推送物流单号轨迹集合 |
R |
订阅查询结果(RequestType:101)
通过轨迹查询(订阅查询)接口订阅到快递鸟的数据,快递鸟推送时,会将推送的RequestType的值置为101,同时返回下列数据
请求内容字段定义:
参数 |
类型 |
说明 |
必须要求 |
||
Data |
EBusinessID |
String |
商户ID |
O |
|
ShipperCode |
String |
快递公司编码 |
R |
||
LogisticCode |
String |
快递单号 |
R |
||
Success |
Bool |
成功与否:true,false |
R |
||
Reason |
String |
失败原因 |
O |
||
State |
String |
物流状态: 0-无轨迹,1-已揽收,2-在途中,3-签收,4-问题件 |
R |
||
CallBack |
String |
订阅接口的Bk值 |
O |
||
Traces |
|||||
Traces |
AcceptTime |
String |
时间 |
R |
|
AcceptStation |
String |
描述 |
R |
||
Remark |
String |
备注 |
O |
||
EstimatedDeliveryTime |
String |
预计到达时间yyyy-mm-dd |
O |
货款状态(RequestType:107)
用户通过电子面单使用快递鸟货到付款等金融服务时,快递鸟会将该订单的金融状态通过接口推送给用户。
请求内容字段定义:
参数名称 |
类型 |
说明 |
必须要求 |
|
Data |
EBusinessID |
String |
用户电商ID |
O |
OrderCode |
String |
订单编号 |
O |
|
ShipperCode |
String |
快递公司编码 |
R |
|
LogisticCode |
String |
物流运单号 |
R |
|
Success |
Bool |
成功与否 |
R |
|
Reason |
String |
失败原因 |
O |
|
State |
String |
物流状态:0-无轨迹,1-已揽收, 2-在途中 201-到达派件城市,3-签收,4-问题件 |
R |
|
CallBack |
String |
订阅接口的Bk值 |
O |
|
OrderState |
String |
订单货款状态:1-待出款;2-已出款;3-已收款 |
O |
|
AccountName |
String |
返款银行卡开户人(例:**伟、*佳) |
O |
|
AccountTel |
String |
返款银行卡手机末四位 |
O |
|
AccountNum |
String |
返款银行卡末四位 |
O |
返回参数定义
参数名称 |
类型 |
说明 |
必须要求 |
EBusinessID |
String |
用户ID |
R |
UpdateTime |
String |
时间 |
R |
Success |
Bool |
成功与否:true,false |
R |
Reason |
String |
失败原因 |
O |
推送接口(商户实现)
请求示例 JSON (订阅查询结果)
{
"EBusinessID": "1109259",
"Count": "2",
"PushTime": "2015-3-11 16:21:06",
"Data": [
{
"EBusinessID":
"1109259",
"OrderCode":
"",
"ShipperCode":
"EMS",
"LogisticCode":
"5042260908504",
"Success": true,
"Reason":
"",
"State":
"2",
"CallBack":
"0",
"Traces": [
{
"AcceptTime":
"2015-03-06 21:16:58",
"AcceptStation": "深圳市横岗速递营销部已收件,(揽投员姓名:钟定基;联系电话:)",
"Remark":
""
},
{
"AcceptTime":
"2015-03-07 14:25:00",
"AcceptStation": "离开深圳市 发往广州市",
"Remark":
""
},
{
"AcceptTime":
"2015-03-08 00:17:00",
"AcceptStation": "到达广东速递物流公司广航中心处理中心(经转)",
"Remark":
""
},
{
"AcceptTime":
"2015-03-08 01:15:00",
"AcceptStation": "离开广州市 发往北京市(经转)",
"Remark":
""
},
{
"AcceptTime":
"2015-03-09 09:01:00",
"AcceptStation": "到达北京黄村转运站处理中心(经转)",
"Remark":
""
},
{
"AcceptTime":
"2015-03-09 18:39:00",
"AcceptStation": "离开北京市 发往呼和浩特市(经转)",
"Remark":
""
},
{
"AcceptTime":
"2015-03-10 18:06:00",
"AcceptStation": "到达 呼和浩特市 处理中心",
"Remark":
""
},
{
"AcceptTime":
"2015-03-11 09:53:48",
"AcceptStation": "呼和浩特市邮政速递物流分公司金川揽投部安排投递(投递员姓名:安长虹;联系电话:18047140142)",
"Remark":
""
}
]
},
{
"EBusinessID":
"1109259",
"OrderCode":
"",
"ShipperCode":
"EMS",
"LogisticCode":
"5042260943004",
"Success": true,
"Reason":
"",
"State":
"2",
"CallBack":
"0",
"Traces": [
{
"AcceptTime":
"2015-03-07 15:26:09",
"AcceptStation": "深圳市横岗速递营销部已收件,(揽投员姓名:周宏彪;联系电话:13689537568)",
"Remark":
""
},
{
"AcceptTime":
"2015-03-08 16:32:00",
"AcceptStation": "离开深圳市 发往广州市",
"Remark":
""
},
{
"AcceptTime":
"2015-03-09 00:58:00",
"AcceptStation": "到达广东速递物流公司广航中心处理中心(经转)",
"Remark":
""
},
{
"AcceptTime":
"2015-03-09 01:15:00",
"AcceptStation": "离开广州市 发往北京市(经转)",
"Remark":
""
},
{
"AcceptTime":
"2015-03-10 05:20:00",
"AcceptStation": "到达北京黄村转运站处理中心(经转)",
"Remark":
""
},
{
"AcceptTime":
"2015-03-10 11:59:00",
"AcceptStation": "离开北京市 发往廊坊市(经转)",
"Remark":
""
},
{
"AcceptTime":
"2015-03-10 14:23:00",
"AcceptStation": "到达廊坊市处理中心(经转)",
"Remark":
""
},
{
"AcceptTime":
"2015-03-11 08:55:00",
"AcceptStation": "离开廊坊市 发往保定市(经转)",
"Remark":
""
}
]
}
]
}
请求示例 JSON格式 (货款状态)
{
"EBusinessID": "1109259",
"Count": "2",
"PushTime": "2015-3-11 16:21:06",
"Data": [
{
"EBusinessID":
"1109259",
"OrderCode":
"",
"ShipperCode":
"EMS",
"LogisticCode":
"5042260908504",
"Success":
true,
"Reason":
"",
"State":
"2",
"CallBack":
"0",
"OrderState":"1",
"AccountName":"张三",
"AccountTel":"13800000000",
"AccountNum":"0321"
},
{
"EBusinessID":
"1109259",
"OrderCode":
"",
"ShipperCode":
"EMS",
"LogisticCode":
"5042260908522",
"Success": true,
"Reason":
"",
"State":
"2",
"CallBack":
"0",
"OrderState":"1",
"AccountName":"张三",
"AccountTel":"13800000011",
"AccountNum":"0321"
}
]
}
返回示例 JSON
{
"EBusinessID": "1151847",
"UpdateTime": "2016-08-09 16:42:38",
"Success": true,
"Reason": ""
}
提供源码下载:
https://download.csdn.net/download/yanghanwen/12139326
调用第三方物流接口,替换自己的key就能直接使用,主要实现了物流在线轨迹查询,订单订阅,轨迹推送,支持500多家的快递查询接口,包括主流的四通一达,支持上门取件服务,其他接口调用,修改调用指令和参数就能实现。
物流跟踪API-快递单推送的更多相关文章
- 物流跟踪 调用快递鸟API
概要:关于调用快递鸟API,我有几句话想说,有几行代码想写 业务需求:就是做做商城,卖卖东西.然后需要做个物流跟踪的功能 需要获取的信息大概就是这个样子 现在看这个快递怎么这么慢 如何实现? 直接调用 ...
- 物流跟踪API-快递单订阅
上一篇文章我们讲解了轨迹查询的接口,通过快递鸟接口可以实现实时查询物流轨迹,这次给大家推荐订阅服务功能. 为了更好的理解订阅服务,我们来做个对比, 即时查询是主动查询物流轨迹,需要我们主动调用接口才能 ...
- 微信公众平台开发,API接入与推送事件(1)
博客好久没有更新了,今天说说微信开发.微信开发的好多初学者都会又这样的迷惑,微信开发到底是什么?其实微信开发本质我和我们的网站开发没有太大的区别.我们常说的微信开发也就是公众号开,微信公众号分为三个类 ...
- 百度收录检测并主动推送API(实时 mip推送通用)
简要描述: 百度收录检测并主动推送API(实时) 请求URL: api.bigjiji.com/baiduCheck_123456 调用方式: img标签 参数: 参数名 必选 类型 说明 site ...
- C#—ASP.NET:集成极光推送(Push API v3)
C#—ASP.NET:集成极光推送(Push API v3) 原文地址: https://blog.csdn.net/CXLLLK/article/details/86489994 1.极光推送官 ...
- 极光API推送 (v3 版本)
Push API v3 这是 Push API 最近的版本. 相比于 API v2 版本,v3 版本的改进为: 完全基于 https,不再提供 http 访问: 使用 HTTP Basic Authe ...
- 【Android应用开发】 推送原理解析 极光推送使用详解 (零基础精通推送)
作者 : octopus_truth 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/45046283 推送技术产生场景 : -- ...
- Qt通过极光推送向app推送消息
简介 最近在做个项目,当客服端收到防盗的消息通知时向手机app推送一个消息,告知有防盗报警.这么小的功能没必要自己写个推送端,极光推送免费而且推送的成功率高,已经能满足我们的需求了. 极光推送的文档大 ...
- 做推送,怎么能不了解推送的 4 种消息形式呢?(iOS 篇)
极光推送是为 App 提供第三方推送服务的平台之一,它提供四种消息形式:通知,自定义消息,富媒体和本地通知.笔者将基于官方说明与个人理解来谈一下这四种消息.本篇为 iOS 篇,Android 篇入口. ...
随机推荐
- 【题解】P1712 [NOI2016]区间(贪心+线段树)
[题解]P1712 [NOI2016]区间(贪心+线段树) 一个observe是,对于一个合法的方案,将其线段长度按照从大到小排序后,他极差的来源是第一个和最后一个.或者说,读入的线段按照长度分类后, ...
- vux中x-input在安卓手机输入框的删除按钮(@on-click-clear-icon)点击没反应
首先看你自己的的版本好,如果在2.6.9以上,我是在git上找到的解决办法,记录一下,希望可以帮到有需要的小伙伴. 在项目中找 node_modules > vux > x-input & ...
- [Oracle]Oracle的闪回归档
Oracle的闪回归档 场景需求,由于管理数据库的一些核心表,在实施初期会有人为误删除的问题.Oracle 11gR2提供了闪回归档的特性,可以保证不用RMAN来恢复误删除的数据.实践如下: 1.创建 ...
- js中getBoundingClientrRect()方法的详解
getBoundingClientRect(): 这个方法返回一个矩形对象,包含四个属性:left.top.right和buttom.分别表示元素各边与页面各边的距离 例如: var boxPosit ...
- Activity启动过程源码分析(Android 8.0)
Activity启动过程源码分析 本文来Activity的启动流程,一般我们都是通过startActivity或startActivityForResult来启动目标activity,那么我们就由此出 ...
- java线程相关基本方法
java线程中常用的基本方法有wait,notify,notifyAll,sleep,join,yield等. 线程的生命周期一共分为五个部分,分别是:新建(New).就绪(Runnable).运行( ...
- 比特币学习笔记(二)---在windows下调试比特币源码
根据我一贯的学习经验,学习开源代码的话,单单看是不够的,必须一边看一边调试才能尽快理解,所以我们要想法搭建windows下bitcoin源码的调试环境. 紧接着昨天的进度,想要调试linux下的比特币 ...
- Centos 中文乱码解决方法
问题描述 crontab -e 添加定时任务时,直接将下面内容粘贴过去,结果竟然乱码了. # 每个星期日凌晨3:00执行完全备份脚本 0 3 * * 0 /bin/bash -x /root/bash ...
- css label两端对齐
上面这种效果很常见,实现的代码如下: html部分 <ul> <li class="detail_item"> <span class="d ...
- JUnit 5和Selenium基础(三)
在这一部分教程中,将介绍JUnit 5的其他功能,这些功能将通过并行运行测试,配置测试顺序和创建参数化测试来帮助减少测试的执行时间.还将介绍如何利用Selenium Jupiter功能,例如通过系统属 ...