Quantcast
Channel: CSDN博客移动开发推荐文章
Viewing all articles
Browse latest Browse all 5930

关于企业版快递100的坑(M5大32位加密&&请求体某参数Value为Json),加密原理

$
0
0

本来就是很简单的一个获取物流信息并展示的功能而已,但是这次后台没有直接把数据处理好返回来,而是要自己在客户端稍微处理下.
然后在网上关于快递100的使用资料也比较少,所以便在这写篇博文给准备入坑的朋友借鉴借鉴.


首先导入 AFNetworing 库;如果还没有使用HTTPS 的朋友变需要设置下网络了.
可以在 plist 文件中添加以下代码,或者直接在 plist 视图中添加字段

<key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>

效果


接下来就是实际的编码,看起来不难,就是很简单的获取数据而已,但是就是这个简单把我坑了.平时比较少处理数据,所以出现了比较多的问题.

1.快递100需要的 param 参数的值要求是 jSon 格式的,这一步还不是太麻烦,
先用一个字典来接收,然后转成 Data 格式,再转成 String 类型就已经是 Json 的了.加入这个 JSon 处理不好的话,就会包参数错误.
这里写图片描述

2.然后就是 sign 签名参数了.以为我只是拿来做下测试的而已,所就直接在站长工具中偷懒加密了(正是这个懒,把自己彻彻底底地大坑了一把)!!!!

这里写图片描述

我直接用站长工具把需要加密的东西加密了出来,然后就是直接 copy 进代码里面用了,然后一直都报签名的错误.
可是我在 postman, 或者拼接后放在网站上一样有数据出来,完全没有问题,可是在 Xcode中却报了签名的错误,苦恼着一遍一遍的 copy. 然并卵…….

最后却完全没脾气,老老实实地从新一步一步地来,最后发现了用代码加密出来的 String 和站长工具加密出来的完全不一样

这里写图片描述

提醒:
快递100 的参数都是 string 类型的

作者:qq_19678579 发表于2017/5/22 19:07:46 原文链接
阅读:14 评论:0 查看评论

Viewing all articles
Browse latest Browse all 5930

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>