物流跟踪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]$区间 线段树
正解:线段树 解题报告: 传送门$QwQ$ $umm$很久以前做的了来补个题解$QwQ$ 考虑给每个区间按权值($r-l$从大往小排序,依次加入,然后考虑如果有一个位置被覆盖次数等于$m$了就可以把权 ...
- 关于Mac VMFusion Centos7虚拟机网络的配置
1.环境配置: 创建完快照后启动虚拟机,使用root用户和root密码登录系统 1.1 停止防火墙 #停止防火墙 [root@localhost ~]#systemctl stop firewalld ...
- HDU3886 Final Kichiku “Lanlanshu” 题解 数位DP
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3886 题目大意: 给一定区间 \([A,B]\) ,一串由 /, \ , - 组成的符号串.求满足符号 ...
- HDU3555 Bomb 题解 数位DP
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3555 题目大意:求 \([1,n]\) 范围内有多少数包含"49". 解题思路: ...
- 关于ESP8266 NodeCMU固件无法刷入新代码的解决方法
在玩ESP8266时,有时候会无意中写了导致死循环的代码,或都某些函数传递了不合适的参数导致系统崩溃,这可能会导致ES8266不停地重启,这时我们发现无法刷入新的代码,也无法删除8266中的原代码.我 ...
- 计算n的阶乘
题目描述 定义一个函数,传入一个整数n,打印n!的值比如:传入3打印:6 <====1*2*3 输入 整数n 输出 整数n的阶乘 样例输入 Copy 3 样例输出 Copy 6 x=in ...
- Spring Boot2 系列教程 (四) | 集成 Swagger2 构建强大的 RESTful API 文档
前言 快过年了,不知道你们啥时候放年假,忙不忙.反正我是挺闲的,所以有时间写 blog.今天给你们带来 SpringBoot 集成 Swagger2 的教程. 什么是 Swagger2 Swagger ...
- max_element( )
直接用这个函数 , 会比自己写个for 判断快的多了 . position=max_element(a,a+n)-a; position 代表找到最大元素的位置 , max_element( ) 的 ...
- 《C# 爬虫 破境之道》:第二境 爬虫应用 — 第三节:处理压缩数据
续上一节内容,本节主要讲解一下Web压缩数据的处理方法. 在HTTP协议中指出,可以通过对内容压缩来减少网络流量,从而提高网络传输的性能. 那么问题来了,在HTTP中,采用的是什么样的压缩格式和机制呢 ...
- Linux 编程题
1. 产生一个进程树,父进程有2个子进程,这2个子进程分别又有2个子进程,每个进程休眠5秒后退出,并在退出前打印自己的进程id号. # include<stdio.h> # include ...