解决快递100普通key不能查询顺丰、申通等快递问题

已在其他板块里和MYCNCART官网插件区提供了下载插件,此贴只是针对快递100的接口进行分析处理
--------------------------------------------------------------------------------------------------------------------------------------
都知道快递100接口升级后,使用普通的key是无法查询到ems、顺丰、申通等快递公司的物流信息。
而需要使用HTMLapi的接口去调用,

http://www.kuaidi100.com/applyurl?key=[]&com=[]&nu=[]

那么这个接口返回的是一个地址url

23190619_iS08.png

通过对这个url的抓包发现,它这个页面打开的时候有了多个请求,其中有个请求返回的响应数据既然是物流信息

23190619_NJDJ.png


那么知道后,我们是否可以直接调用此接口呢。

经过参数的拼装再次访问这个地址

http://www.kuaidi100.com/query?id=1&type=ems&postid=ED735359932IN&valicode=&temp=0.4958606243599206

在一定时间内是有效的,但是过后却会返回报错信息:如下

23190619_dFMf.png

有人就会觉得奇怪,明明是可以抓包看到的数据就是这个地址的,为什么通用的数据去查不了呢,还有人会觉得那个参数tmp那个时间戳的问题...

我试着适应ajax拼装请求获取这个随机的时间戳还是无法得到正确的响应......

亲们可以分析下那个调用htmlapi返回的url打开后的页面,看看源代码里面有个引用js里面写了个异步调用这个query这个接口的。也是异步

-----------------------------------------

以上方法行不通,那么我就开始分析这个抓包的数据了,看到在请求http://www.kuaidi100.com/query?id=1&type=ems&postid=ED735359932IN&valicode=&temp=0.4958606243599206这地址的时候,请求头里的Referer的参数既然是那个响应url,如图

23190619_DwnO.png

知道这个就好办了,我们来模拟请求下面是php写法的列子:

请请求获取到htmlapi返回的url,然后再请求第二个接口拼装请求头去请求,这样就能返回标准的json数据,接下来怎么操作,各位自明哈

23190619_ID94.png

--------------------------------------------------------------------

第一次写这样的帖子,又比较急着吃饭,各位谅解谅解..................



转载于:https://my.oschina.net/u/991572/blog/550110

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值