用c#查询各快递物流信息
前面介绍过《用快递100接口查询各快递物流信息》,里面用的是API接口,但有些快递不支持这种方式,本文介绍的HtmlAPI支持所有快递公司。
支持包括EMS、邮政、顺丰和申通在内的所有公司,稳定性强、速度快,易开发、安全性高 。
1、API请求地址
http://www.kuaidi100.com/applyurl?key=[]&com=[]&nu=[]
(配参数时请先将 中括号去掉)
2、传入参数说明
参数 |
是否必需 |
说明 |
key |
是 |
快递100的授权key,如果已有快递100的key,可以直接使用已有的;如果还没有申请,请点击 快递查询API进行申请。 |
com |
是 |
快递公司编码见下表 |
nu |
是 |
快递单号 |
3、支持的公司
HtmlAPI支持快递100所有支持的公司,以下只罗列最常见的几个快递,更多的编码请点击《用快递100接口查询各快递物流信息》查看
分类 |
快递公司代码 |
公司名称 |
E |
||
ems |
ems |
|
emsguoji |
ems国际件 |
|
S |
||
shentong |
伸通 |
|
shunfeng |
顺丰 |
|
Y |
||
youzhengguonei |
中国邮政国内包裹/挂号信/国内小包大包 |
|
youzhengguoji |
中国邮政国际包裹/挂号信/国外小包大包 |
4、返回结果说明:
提交请求后,快递100会给您返回一个可以看到结果的url地址,如:http://www.kuaidi100.com/kuaidiresult?id=23 ,您直接访问或用iframe页调用该url(调用方法见后面第四章),即可以看到结果。效果:
特别提醒:
因为EMS、顺丰和申通偶尔会不稳定, 不稳定时会先显示验证码 (如下图所示),所以请勿直接将这个页面直接解析成JSON等形式,否则会出错!
5、整体使用流程
第一步,后台创建链接,调用:http://www.kuaidi100.com/applyurl?key=[]&com=[]&nu=[] ,调用后系统会返回一个url地址,如:http://www.kuaidi100.com/kuaidiresult?id=23 。
第二步:在要显示结果的页面添加一个iframe标签,将上述结果url地址传入该iframe标签的的src值,即可在该页面查看到结果(如果要实现系统自动地将结果url传入iframe标签的src,请参考下面第五章),iframe代码示范:
<iframe name="kuaidi100" src="结果url地址" width="600" height="380" marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0" scrolling="no"></iframe>
如果要实现系统自动地将结果url传入iframe标签的src,请参考下面
6、 C#示范
首先加一个iframe, 取到数据后,填充它
- <iframe class="address_b order_zhui" height="260px" width="100%" id="kdFrame"></iframe>
- $.get("Get.aspx", { wid: wid, openid: openid, rid: rid },
- function (data) {
- $("#bhao").hide();
- if (data != null) {
- $("#bhao").show();
- //$("#retData").html(data);
- $("#kdFrame").attr("src", data);
- }
- }
- );
后台:
- //用htmlapi
- WebClient client = new WebClient();
- string url = string.Format("http://www.kuaidi100.com/applyurl?key={0}&com={1}&nu={2}", ApiKey, typeCom, nu);
- log.Info("url: " + url);
- Byte[] pageData = client.DownloadData(url);
- string pageHtml = Encoding.ASCII.GetString(pageData);
- log.Info("return url: " + pageHtml);
- Response.Write(pageHtml);
用c#查询各快递物流信息的更多相关文章
- .netcore 写快递100的快递物流信息查询接口
快递100的物流信息查询接口,官方提供了一些demo;还好官方提供的代码是.netcore版本写的,不过写的有点low;根据官方提供的代码,我按照.netcore 的风格重构了代码:核心代码如下: / ...
- 微信小程序+OLAMI(欧拉蜜)自然语言API接口制作智能查询工具--快递、聊天、日历等
微信小程序最近比较热门,再加上自然语义理解也越来越被人关注,于是我想赶赶潮流,做一个小程序试试.想来想去快递查询应该是一种比较普遍的需求. 如果你也在通过自然语言接口做点什么,希望我的这篇博客能帮到你 ...
- 物流一站式单号查询之快递鸟API接口(附Demo源码)
连载篇提前看 物流一站式单号查询之快递鸟API接口 物流一站式查询之TrackingMore篇 物流一站式查询之顺丰接口篇 物流一站式查询之快递100 前情提要 前三篇中,我们已经从注册.申请接口.调 ...
- PHP实现物流查询(通过快递网API实现)
物流查询实现 引 言:目前快递公司太多了,不可能一个一个去申请api查询.这个时候,就可以通过合作,找一些中间商合作.我试了两家,一家是快递100,一家是快递网. 他们都需要申请key.但是快递100 ...
- iOS 获取快递物流信息(GCD异步加载)
#import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicationDelegate> @pr ...
- 快递查询API接口(trackingmore)
快递查询接口 目前提供快递查询的接口平台有: Trackingmore 快递100 快递网 不同接口的区别: (1)Trackingmore支持380家快递公司,其中有55家为国内的快递,其余325家 ...
- php快递单号查询源码
贴下记录下php查询快递单号的源码,能查询各种快递的快递单号记录,中通.圆通快递.顺丰快递等都不是问题.只需要在 爱快递(www.aikuaidi.cn)上面申请一个快递key即可,下面把源码分享下, ...
- 基于PHP的快递查询免费开放平台案例-快宝开放平台
快递查询是快递业务中极其重要的业务,免费的快递查询开放平台:快宝开放平台. 快宝开放平台:http://open.kuaidihelp.com/home,已经对接100多家快递公司,实现快递物流信息实 ...
- 国际快递查询接口JAVA示例-trackingmore
国际快递查询接口 国际快递查询接口的需求量很大,例如一些跨境电商B2C网站.快递查询APP.快递柜.跨境物流公司等都会需要用到国际快递接口. 目前市面上的快递接口,以国内快递居多,有些虽然号称支持多家 ...
随机推荐
- 福州大学软件工程1816 | W班 第3次作业成绩排名
写在前面 汇总成绩排名链接 1.作业链接 第三次作业--原型设计(结对第一次) 2.评分准则 本次作业总分 25分,由以下部分组成: (1)在随笔开头请加上该博客链接,以方便阅读时查看作业需求,并备注 ...
- org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manu
这个是sql 语句 错误 仔细检查 SQL语句是否写错了 org.apache.ibatis.exceptions.PersistenceException: ### Error queryi ...
- JEECG & JEESite Tomcat集群 Session共享
多台tomcat服务的session共享 memcached与redis - JEECG开源社区 - CSDN博客https://blog.csdn.net/zhangdaiscott/article ...
- vue学习的笔记补充
// vue-router中可以使用 routes:[ { path:'/', name:'index', component:()=>import('./index') } ] // 这种写法 ...
- bootstrap模态框关闭后清除模态框的数据
https://segmentfault.com/q/1010000008789123 bootstrap模态框第二次打开时如何清除之前的数据? 我用了bootstrap模态框的remote功能,在弹 ...
- vagrant的centos镜像,怎么用root用户登录?
vagrant的centos镜像,默认用户和密码都是vagrant,如果要用root用户登录,应该怎么办呢? 百度了一下,有一篇博客是这样说的: 默认的登录用户是vagrant,如果想实现默认root ...
- Day 5-6 反射和内置方法之item系列
python面向对象中的反射:通过字符串的形式操作对象相关的属性.python中的一切事物都是对象(都可以使用反射) #!_*_ coding:utf-8 _*_ class People: def ...
- gitlab+jenkins
一.安装好gitlab.jenkins yum install -y java wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-sta ...
- $.ajax的async设置true和false的区别一点笔记
async的默认值是true 当async为true时,为异步请求 如果一个$.ajax的函数在另一个函数中调用,不一定会等该函数调用完再加载完函数 导致产生空值的问题 而在JS函数中调用$.ajax ...
- ubuntu16.04下 搭建 lnmp 环境
apt-get install nginx apt-get php7.-mysql apt-get install mysql 编辑nginx配置文件 vim /etc/nginx/sites-ena ...