微信支付 在部分安卓设备下获取不到openid 但是IOS设备却可以获取呢

在做微信支付这款 IOS设备都没有问题,安卓设备一直获取不到openid 导致无法进行支付 微信返回错误代码是40029

阅读 4.5k
1 个回答

是微信服务器提交了几次code导致code失效了吧(code只能用一次),在执行的时候加入写日志操作就可以发现的确执行了两次!通过多次的测试问题是出自获取用户信息时的json数据转换成对象时失败了(也就是异常),而没有try一下,导致微信服务再次提交相同code给你,而这个code你已经用了,所以第二步获取access_token时就出现40029问题。(ps:之前是获取到了一次。)

解决方案:整体加个try catch 从而找到问题的根源并解决它!

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题