PC 端“常规”微信登录
官方推荐的 PC 端登录是通过微信开放平台创建应用来实现的。凡是创建的应用都能用下面微信提供的链接来进行扫码授权操作
https://open.weixin.qq.com/connect/qrconnect?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
- 连接包含地址
- 可以看到 response_type, scope 都是写死的。appid 会在你创建应用的时候给你(当然还有 AppSecret)。state 主要是为了用于验证是否是别人假冒的请求。重点是 redirect_uri。当用户扫码之后微信会重定向当前页面跳转到 redirect_uri 指向的地址。这个链接需要进行 urlEncode 进行重定向。为什么需要 urlEncode 对链接进行处理呢,我搜了一些资料总结了俩条我认为最重要的理由: 1. url 链接支持的字符有限,不进行编码是无法识别的 2. url 规定了一些特殊字符,如 &, ?, # 要是链接中带有这些字符会被误认
对 url 进行编码也很简单,下面的 js 代码直接拷贝即可
let a = 'http://xuyuechao.top'
// 编码
let b = encodeURIComponent(a)
// 解码
decodeURIComponent(b)