现象:
微信的带公众号发起的网页授权,点击同意授权后,但是没有code,也没有传入的state的参数。
备注:同一份代码,在A环境运行OK,在B环境运行授权貌似没有通过【原因:再次扫二维码的时候,依旧需要去授权,所以基本判定授权应该没有通过】
官方的授权链接:
https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE&component_appid=component_appid#wechat_redirect
各种尝试:【B环境】
将appId:已经设置为公众号的appId,但是不行。
将rediect_url:已经设置到服务商的平台的下。但是依旧不行
尝试后的现象:出现授权界面,但是点击同意授权后,拿到的链接:只有redirect_url的链接,没有code,没有传入的state的参数
99%是B的环境问题,或者你拼接的参数的问题
https://developers.weixin.qq.com/community/develop/doc/0006023d03c38887dd498de1f5bc00?fromCreate=0
为啥我获取不到code呢?两个入口用到了支付。其中一个可以成功唤醒,另一个入口怎么都拿不到code,参数拼接的redirct_uri是通过encodeURIComponent进行编码的。
授权都有问题。奇怪的是把参数拼接以后再开发者工具可以正常获取到code
请问参数编码是指将redirect_uri用 encodeURIComponent编码吗?
安卓取关debug清缓存,或者换台设备试试呢?
代码应该是没有问题的,因为在A环境,已经测试通过了。但是B环境不通过,可能是微信的配置问题,也可能是B环境本身的问题导致的