微信扫码登录
1. 引入微信扫码登录
1.1 引入微信扫码登录的 js 文件
html
<script src="https://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js"></script>1.2 在 html 中添加一个 div,用于显示微信扫码登录的二维码
html
<div id="login_container"></div>1.3 在 js 中调用微信扫码登录的 js 文件,生成二维码
html
<script>
new WxLogin({
id: "login_container",
appid: "",// appid
scope: "snsapi_login",
redirect_uri: encodeURIComponent("http://www.baidu.com"),
href: "",
state: "",
style: "",
href: "",
});
</script>1.4 参数说明
md
appid:应用唯一标识,在微信开放平台提交应用审核通过后获得
scope:应用授权作用域,snsapi_base
(不弹出授权页面,直接跳转,只能获取用户 openid),snsapi_userinfo
(弹出授权页面,可通过 openid 拿到昵称、性别、所在地。并且,即使在未关注的情况下,只要用户授权,也能获取其信息)
redirect_uri:重定向地址,需要进行 UrlEncode
href:自定义样式链接,需要在微信开放平台网站上的开发者设置中配置
state:用于保持请求和回调的状态,授权请求后原样带回给开发者的页面
style:提供默认样式2. 微信扫码登录流程
用户点击登录按钮,跳转到微信扫码登录页面
用户扫描二维码,授权登录
微信服务器将用户信息返回给网站服务器
网站服务器将用户信息保存到数据库中
网站服务器将用户信息返回给前端页面,前端页面根据用户信息进行登录
前端页面根据用户信息进行登录,登录成功后跳转到首页
3. 注意事项
微信扫码登录需要在微信开放平台进行注册和审核
微信扫码登录需要在网站服务器上进行配置
微信扫码登录需要在前端页面上进行配置
微信扫码登录需要用户授权,用户授权后才能获取用户信息