>백엔드 개발 >PHP 튜토리얼 >微信支付 在部分安卓设备下获取不到openid 但是IOS设备却可以获取呢

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

WBOY
WBOY원래의
2016-07-06 13:52:581664검색

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

回复内容:

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

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

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.