• 简书网微信公众号二维码
您当前的位置: 首页 > 知识百科 > 公众号微信号无法授权怎么办?微信公众号网页授权失败

公众号微信号无法授权怎么办?微信公众号网页授权失败

时间:2023-07-01 14:05 阅读数:16 人阅读 分类:知识百科

  公众号微信号无法授权怎么办?微信公众号网页授权失败,小伙伴们有没有遇到过微信公众号网页授权失败的情况呢,为什么会出现这样的问题呢,怎么去解决呢。下面小编就来为大家讲解一下关于微信公众号网页授权失败的问题。

  问题

  今天同事在调试微信公众号网页授权时,发现一个非常诡异的问题。当scope为snsapi_base时,可以正常授权,当scope为snsapi_userinfo时,无法授权,出现空白页面。

  解决过程

  首先可以排除接口权限的问题,因为snsapi_base和snsapi_userinfo需要的权限是一样的。也可以排除是微信sdk的问题,所以还是从自身找问题。通过后台调试,把授权页面的地址打印出来是这样子的:

  //把下面url中的scope=snsapi_userinfo 改为 scope=snsapi_base可以正常授权

  对比官网wiki文章,同事肉眼对比链接没有发现任何问题。后来我表示不服,决定肉眼再观察一遍,终于发现 appId 中的字母I应该是小写的。改成小写后测试通过。OMG,又是linux的大小写问题。

  非常简单的一个低级错误,一方面暴露了我们自己的不严谨,没有严格按照微信官方的wiki来做,忽略了url参数中的大小写问题;另外一方面,也反映出微信的不厚道,同样都是大写的字母I,为什么snsapi_base的授权模式是可以的,而snsapi_userinfo不行呢,我猜可能是前者在获取appid这个参数时,会统一转换成小写,而snsapi_userinfo时没有做这个操作。导致微信授权服务接收不到appid这个参数。此时,微信应该报一个类似于获取appid失败这样的错误的,可是并没有,而是停留在授权页面无法跳转到用户的redirect_uri,用户看到的表现就是空白页面。微信这样做可能是出于安全考虑吧。

  假如在网页授权时有类似的空白页出现,可以从我刚刚提供的思路去查看,是否有类似的大小写问题。

  其他问题

  在做网页授权时,经常会遇到的一个其他问题是提示:redirect_uri参数错误。出现这个问题的原因通常都是没有在接口权限表中修改OAuth2.0网页授权的授权回调页面域名,或者填写在域名前面多加了或者s

  工具

  在开发微信公众号时,可以申请测试号来体验,它拥有大部分高级权限(除微信支付之外)。在公众号处于申请阶段,用这个测试号来开发是非常棒的!

  另外,给大家推荐一个github上非常实用的微信公众号开发sdk,它对微信公众号的sdk做了二次封装,包括缓存access_token等处理,目前有php版本的。

  以上就是小编为大家整理的关于公众号微信号无法授权怎么办?微信公众号网页授权失败的内容。更多更精彩的内容请持续关注微信素材网。

  相关阅读:

       微信转载文章授权问题,微信公众号原创文章新增授权转载功能

       公众号怎么授权给别人?微小宝在线版怎么实现微信公众号授权?

       微信公众号留言为什么看不到?微信公众号怎么设置粉丝留言?