博客> 京东开普勒iOS端对接遇到的奇葩问题
京东开普勒iOS端对接遇到的奇葩问题
2小时前 评论:0 阅读:465 lsb
ios 京东开普勒

最近项目接入京东开普勒,和淘宝客sdk。淘宝还算顺利,京东接口调用折腾了半天,纯粹是纠文字理解。将相关问题和解决办法分享出来,希望大家遇到不会消耗时间。

京东开普勒 API 1.0 SDK 2.x

1.sdk集成时遇到下单京东sdk的h5页面一直报错,没有任何提示,京东技术支持也无解,如图。  60F7F32D-A91A-4CA8-BAC2-550BA2FE055B.png

sdk经过各种尝试发现,sdk文档有这么一个可选方法(只有这个方法我没有实现,因为没必要的就不想集成)

//iOS7以后会根据获取的结果适当的调整唤醒的时间策略 (可选)

  • (void)application:(UIApplication *)application 。。。。。。

最后死活支持了这个更新处理,下单问题就解决了

2.指明了只通过H5展示界面,避免app跳转影响体验,结果H5界面还提示用户打开京东app  7F02CD1153F9B936B1FDFAE759A5733D.jpg

/* 是否强制使用H5打开界面 设置为YES时,打开链接时不会跳转到JD APP / @property (nonatomic, assign)BOOL isOpenByH5; 京东没认为这是个问题,sdk方法也不支持传入自定义webview,所以如果必须要控制,只有重新指定push的vc上的webView委托。

3.遇到最折腾的是使用API获取商品详情数据,一直报sign无效错误 需要明确几个注意点 1.API需要token,从你的服务器获取(也可以客户端自己处理) 2.组合httprequest需要的参数数据,这里特别注意,排序规则,文档说明和例子很容易忽悠你。处理办法 组合param的各个参数名称排序,一定和组合sign的参数名称排序一致。param的参数多了一个sign,将sign放到最后组合进去。 e.g.. sign 字符串 你的serectaccess_token你的tokenapp_key你的keyformatjsonmethodjd.kepler.service.promotion.goodsinfoparam_json{ "skuIds" : "13143442272" }sign_methodmd5timestamp2017-08-15 17:48:49v1.0你的secret

param 字符串 access_token=你的token&app_key=你的key&format=json&method=jd.kepler.service.promotion.goodsinfo&param_json={ "skuIds" : "13143442272" }&sign_method=md5&timestamp=2017-08-15 17:48:42&v=1.0&sign=2CD1DFAE1421753A77C7F705BDC52123

收藏
0
sina weixin mail 回到顶部