微信给开发者提供的测试账号平台
https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index
微信网页开发文档
授权文档
https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html#1
接入微信授权
静默授权: scope=snsapi_base,没有弹窗,只能获取用户的openId
非静默授权: scope=snsapi_userinfo,有弹框弹出需要用户手动点击确认授权。可以获取openId,用户的头像、昵称等
准备地址
因为需要用户头像,所以用的是非静默授权
https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appId}&redirect_uri=${url}&response_type=code&scope=snsapi_userinfo&state=#wechat_redirect
上面链接的参数appid使用测试账号平台给的测试号的appID
重定向地址url需要配置,同样是在测试账号平台,拉到网页服务–网页帐号–修改
注意配置的地址不用加https://,不然会提示“redirect_uri 参数错误”
然后把这个配好的链接放到微信开发者工具打开就行了,用公众号网页调试,这个链接只能在微信环境中有效,浏览器网页打开会提示“请在客户端打开链接”
回车后就会跳转到刚才配置的重定向地址了,code也会带在地址后面过来。
记得关注测试号的公众号,不然会报错(“没有关注”还是“没有权限”忘了)
如果是公众号授权托管给第三方平台,由第三方平台代替授权公众号发起网页授权,需要多加一个参数component_appid
,作为第三方平台开发商,需要拥有自己的 appid 以及 secret(在创建第三方平台并获得审核成功后可以获取),以及确保授权的公众号具备授权作用域的权限,以及用于回调的域名。
微信文档:https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/2.0/api/Before_Develop/Official_Accounts/official_account_website_authorization.html