微信网页授权

微信通过网页授权可以在网页内获取微信用户信息,进而在网页内实现相关的业务逻辑。

微信网页授权的scope有两种,一、base 只能获取openId信息,二、userInfo 获取的信息较多。

同意授权页面链接最终会是如下形式:

`https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx520c15f417810387&redirect_uri=https%3A%2F%2Fchong.qq.com%2Fphp%2Findex.php%3Fd%3D%26c%3DwxAdapter%26m%3DmobileDeal%26showwxpaytitle%3D1%26vb2ctag%3D4_2030_5_1194_60&response_type=code&scope=snsapi_base&state=123#wechat_redirect`

或者

`https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxf0e81c3bee622d60&redirect_uri=http%3A%2F%2Fnba.bluewebgame.com%2Foauth_response.php&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect`

业务场景

进入页面——判断该用户是否激活——激活显示后续页面——未激活显示激活页面

我的思路是通过页面授权,页面获取openId信息,通过url后面拼接的code获取openId信息,然后根据openId查询数据库获取用户激活情况返回给前端页面。

但是直接通过网页授权会出现一个问题,code用过一次时候就会失效,如果用户在微信内刷新网页就会出现问题。

因此,我的解决思路是微信授权页面不是直接指向静态页面,而是指向RESTFUL服务后台,控制器处理后获取用户的相关信息将参数通过加密合成一个参数拼接在静态页面的url后,然后重定向到静态页面,如此页面直接获取用户的信息,用户在微信内刷新网页也不会有影响。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容