收藏
回答

微信公众号网页授权时,回调两次?

https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxae99846d698d58b7&redirect_uri=http%3a%2f%2ftszywx.qijiuyi.cn%2fqujiuyi_lottery%2fclient%2ftest1&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect


像这种网页,我获取code时,会收到两个请求:

code虽然都是一样的,但是ip一个是成都的ip,另一个是上海的ip,有时候是天津的ip,sessionId也不一样。


比如

101.226.233.145 + 123.151.76.158

101.226.233.154 + 123.151.76.158

101.226.233.151 + 123.151.76.158

101.226.233.156 + 123.151.76.158

……



回答关注问题邀请回答
收藏

18 个回答

  • Lucas
    Lucas
    2019-08-14

    问题通过ajax解决

    解决代码开源,已经发布到github地址: https://github.com/andotorg/FixNginxProxyWechat.git

    2019-08-14
    有用 1
    回复 1
    • Lucas
      Lucas
      2019-08-14
      https://zhuanlan.zhihu.com/p/78071534
      2019-08-14
      回复
  • 脸不够圆
    脸不够圆
    2018-04-04

    2018/4/4 更新该问题:

    发现了其中一个原因:由于微信X5浏览器自带一个超时重发的功能(超过10秒重新发送请求),所以如果你处理code的时间过长,就会出现多次code的情况。你们自己检查一下吧。


    2018-04-04
    有用 1
    回复 1
    • xiao🍺
      xiao🍺
      2019-10-22
      这种知识点是怎么查到的,(我真没在官方文档上看到过,难道是我看漏了)
      2019-10-22
      回复
  • 小拳拳捶你胸口
    小拳拳捶你胸口
    2019-08-08

    @改变自己      https://open.weixin.qq.com/connect/oauth2/authorize?appid={$appid}&redirect_uri={$redirect_uri}&response_type=code&scope=snsapi_base&state={$state}&connect_redirect=1#wechat_redirect       #锚


    2019-08-08
    有用
    回复
  • 北回归线
    北回归线
    2019-03-22

    加到#wechat_redirect前,试了下好像可以,但是经常会遇到重定向出现500错误,不知道怎么回事

    2019-03-22
    有用
    回复
  • 嘉年华
    嘉年华
    2019-01-24

    难道是这个问题?

    onShow: function () {

    this.onLoad()

    }

    2019-01-24
    有用
    回复
  • 发哥
    发哥
    2018-12-19

    一个是上海的ip,一个是本地网络的ip。加了&connect_redirect=1 无用。关键还是线上程序毫无修改

    2018-12-19
    有用
    回复
  • Tommy
    Tommy
    2018-03-12

    @脸不够圆,你改了nginx解决了问题,你也说明一下怎么解决的吧= =,微信官方咋不做任何解释捏?

    还有就是 9楼的方法是可行的,加了这参数后确实微信没有发两次,具体没说请求参数怎么加,是这么加的--->例子:

    https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE&connect_redirect=1#wechat_redirect

    那么我还有一个问题,@Asan 请求的这个参数,微信的开发文档并没有说明,你能说下这参数是怎么来的不?



    2018-03-12
    有用
    回复
  • 尙
    2018-03-12

    这种方法试过的,可以解决八成左右的问题,但是仍然有部分手机加了这个参数还是不行,还有什么方案吗

    2018-03-12
    有用
    回复
  • 红苔
    红苔
    2018-03-12

    加到#wechat_redirect前面:.....sapi_base&state={$state}&connect_redirect=1#wechat_redirect

    2018-03-12
    有用
    回复
  • 改变自己
    改变自己
    2018-03-11

    @9楼 在那个地方加&connect_redirect=1 这个东西  我试了https://open.weixin.qq.com/connect/oauth2/authorize?appid={$appid}&redirect_uri={$redirect_uri}&response_type=code&scope=snsapi_base&state={$state}#wechat_redirect&connect_redirect=1  不行呀

    2018-03-11
    有用
    回复

正在加载...

登录 后发表内容