appid: 公众号对应的唯一标识id
code: 使用code去换取openid
官方文档:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html
-
获取时机
本次获取openid功能是写在router/index.js全局路由前置守卫中;
分为四种情况:
有openid:
是否是微信浏览器 ?? next()
没有openid:
是否是微信浏览器 ? 走标准流程获取openid : 自己业务自己模拟处理获取openid或者给出对应提示
-
获取方法
1) 自己获取code:
2) 使用code换openid:
直接调用后端提供的方法,code换openid交由后端处理
3 ) 拿到获取的openid做业务操作 -
获取后的业务操作:
1)引入weixinjs sdk,调用wx.config后(这是第一步,走不到这一步后续都没法操作);调用wx其他api实现业务动作;
2)获取wx签名,检测js接口列表,实现扫码功能
注意事项:
1、scope:分为静默登录和授权登录,其中授权登录需要提供一个符合规范的授权功能,用户必须点击授权后才能获取用户公开信息,头像昵称等。
2、是否是微信浏览器判断函数
export function isWxBrowser(obj) { const ua = window.navigator.userAgent.toLowerCase() return ua.match(/micromessenger/i) == 'micromessenger' }