关于PHP中微信公众平台网页授权两次重定向跳转的问题

匿名 (未验证) 提交于 2019-12-02 22:11:45

吐槽一下,新版的这个编辑器怎么这么难用!!!
微信公众平台网页授权时,请求授权链接
https://open.weixin.qq.com/connect/oauth2/authorize?appid=xxx&redirect_uri=xxx&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect
之前会出现要求两次授权,以为是网速慢,服务器卡了,没在意。

今天请求scope=snsapi_base时,发现数据库中存了相同的openid,因为没有使用openid做主键,所以允许openid重复。
查看log发现同一时间居然有2条不通的code。

说明微信那边重定向了2次过来。
网上搜了一下,说是添加&connect_redirect=1这个字段,反正我这里无效。问题依旧。
因为是php,使用的是header跳转。

改为location跳转,居然问题解决了!!!!
只需要把
header("Location: {$authorization_url}");

改为
echo "<script>location.href='".$authorization_url."'</script>";
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!