微信公众号的微信授权(小白血泪史)

887 阅读2分钟

根据微信官方文档所述 微信授权共有如下步骤:

1 第一步:用户同意授权,获取code

2 第二步:通过code换取网页授权access_token

3 第三步:刷新access_token(如果需要)

4 第四步:拉取用户信息(需scope为 snsapi_userinfo)

5 附:检验授权凭证(access_token)是否有效

①第一步:如微信官方官方文档所述(以下为官方口述)(如有不懂可前往微信官方文档自行查阅)

第一步:用户同意授权,获取code

在确保微信公众账号拥有授权作用域(scope参数)的权限的前提下(服务号获得高级接口后,默认拥有scope参数中的snsapi_base和snsapi_userinfo),引导关注者打开如下页面:

https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect 若提示“该链接无法访问”,请检查参数是否填写错误,是否拥有scope参数对应的授权作用域权限。

尤其注意:由于授权操作安全等级较高,所以在发起授权请求时,微信会对授权链接做正则强匹配校验,如果链接的参数顺序不对,授权页面将无法正常访问

总结就是 请求如下地址 

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

如果提示redirect_uri错误的话 有可能就是你的地址写错了 并且还要注意顺序问题 也有可能导致报错 下面贴我的代码


②通过code 换取网页授权access_token

可能大多数人都知道怎么通过code换取的  但是对于小白的我(哦 不 应该是太白)真的完全不知道怎么获取code 查了很多文档都是拿code换 拿code换 废话 我也知道 但大哥们至少给我们太白说怎么换吧 废话不多说 就是在返回的页面地址上会携带code回来 对它进行截取即可 下面贴我的代码(我感觉我这代码就是太白金星应该也能看懂吧哈哈哈哈哈哈哈哈)


拿到code之后所有文档都说 你要调哪个哪个url去请求我的access_token 但是我们的后端并没有给我们去搞这个链接  我直接去请求他的接口地址 一直爆500  对我这种太白来说知道怎样去调接口很不容易了 你还给我搞那么多花里胡哨的 简直想骂街 所以 所有小白都记着只要接口爆红就去找后台(哈哈哈哈哈哈哈 开个玩笑)下面又是我最喜欢的贴代码环节



③第三步 我不需要所以没写

④第四步 就是看你们告诉自己的需求了  scope有静默授权和手动授权两种 看个人需求喽

最后贴一下无关但有关的代码 可不看 代码接手比较冗余 但请不要喷我