- 第三方代网页授权 ,通过 code 换取 access_token,openid想问明白
https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/2.0/api/Before_Develop/Official_Accounts/official_account_website_authorization.html 第三方代网页授权 ,通过 code 换取 access_token,openid,refresh_token,现在我想问的是,access_token(7200秒)refresh_token(30天), 这个access_token是根单一微信用户open_id相关的,由用户授权后取得的。然后通过access_token,查询https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN 微信用户的详细信息。我们可以通OPENID获取用的户信息,我们这里只想要头像呢称。 现在要想问明白,如果取得access_token,查询另外一个open_id 是不是有效?我的理解是针结单一微信用户有效,那如果要做access_token(7200秒)refresh_token(30天) 保存及更新,要处理的数据是不是有些多。如果是单一的,那就是要求第三方代网页授权后,必须得主动保存微信用户的信息。我觉得这与贵公司授权初衷有些背离,是尽量不让我们去保存微信用户 的信息到别的服务器数据库里,所以我是想微信用户的信息还是从微信那里取,一般的场景是每次登录会拉新一次用户信息,并显示出来。目前就是access_token 如果只能针对单一用户,那就必须让我们每三方 做access_token(7200秒)refresh_token(30天)保存跟刷新。 我们还找到一个API:https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN这个也可以拉取用户信息,但是有效信息太少, 这里的access_token是公众号的基础access_toen,这个我们第三方是做维护的。 我现在想要一个明确的签复是,第三方代网页授权 ,通过 code 换取 access_token,refresh_token,只对当前授权微信用户有效吗?对于另外一个微信用户帐户是有效的?还是无效的? 谢谢
2022-05-16 - 第三方代公众号发起网页授权,请求 CODE,附上redirect_uri,回调格式不准确。
https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/2.0/api/Before_Develop/Official_Accounts/official_account_website_authorization.html 请求 CODE,附上redirect_uri,回调格式不准确。如:http://www.qq.com/wx/#/papges/wxauth/wxauth,回调时, URL微信后台回调是http://www.qq.com/wx?code=CODE&state=STATE&appid=APPID#/papges/wxauth/wxauth,造成回调地址不准确。目前VUE前端就不能正确取得code. 目前我们采用变通的办法是,VUE前端通过后端API,获取授权链接附加state是前端的URL,redirect_uri指向后端的Controller,取得code后,再302到前端授权回调页。 这样虽然可以走通,但是中间转了二次,效率也不高,希望能改进。或给我们指明新的方法。谢谢!
2022-05-09