收藏
回答

微信网页授权如何传递多个参数?redirect_uri如何包含参数

问题模块
教程反馈

微信网页授权访问以下连接时

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

请问:

1、state参数的长度有限,而且内容只能是字母和数字。请问如果我要增加其他的参数怎么办?


2、redirect_uri如果为http://www.baidu.com?a=123&b=678.后面的response_type、scope、state等参数是否会被认为是redirect_uri的参数,导致该授权连接无效?


3、当访问授权连接成功后会跳转到 redirect_uri/?code=CODE&state=STATE,如果redirect_uri为http://www.baidu.com?a=123&b=678,则 redirect_uri/?code=CODE&state=STATE将变为为http://www.baidu.com?a=123&b=678/?code=CODE&state=STATE,这里出现了两个“”并且b=678/?code=CODE如何解决?

最后一次编辑于  2018-11-15  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

1 个回答

  • จุ๊บ
    จุ๊บ
    2018-11-16

    个人建议,先获取code,获取code之后跳转到另一个页面,这个页面获取code,然后通过code获取用户信息。获取用户信息之后,再携带参数跳转,通过参数请求数据并渲染

    2018-11-16
    赞同
    回复 6
    • 天下第一
      天下第一
      2018-11-16

      我的参数就在以下这个链接里

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

      如果先获取code再获取用户信息,然后必须在跳转页面前就得有参数。


       跳转到redirect_uri/?code=CODE&state=STATE时, redirect_uri这个页面就必须显示出参数,而且这个参数也不是查询出来的,是通过扫描二维码得到的,二维码的内容就是

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

      请问你有什么好的想法吗

      2018-11-16
      回复
    • จุ๊บ
      จุ๊บ
      2018-11-16回复天下第一

      你这二维码 不就是获取用户信息吗?还有啥???你要实现什么?

      2018-11-16
      回复
    • 天下第一
      天下第一
      2018-11-16回复จุ๊บ

      获取用户信息的同时向redirec_uri传递参数

      2018-11-16
      回复
    • จุ๊บ
      จุ๊บ
      2018-11-16回复天下第一

      测试了下redirect_uri里面有参数是没事的,但是这个redirect_uri 需要经过urlencode处理之后才可以

      2018-11-16
      回复
    • 天下第一
      天下第一
      2018-11-16回复จุ๊บ

      你可以试试可以加几个参数吗?

      如果redirect_uri=http://www.baidu.com?a=1那么跳转到redirect_uri/?code=CODE&state=STATE的时候会变成http://www.baidu.com?a=1/?code=CODE&state=STATE这种格式吗?如果会是不是要单独处理a=1/?code=CODE?


      2018-11-16
      回复
    查看更多(1)