结合微信开发平台实现微信扫码登录的过程,其中整个过程就是用到了下面几个过程。
(1)使用JSSDK的脚本实现扫码获取code
JS微信登录主要用途:网站希望用户在网站内就能完成登录,无需跳转到微信雨下登录后再返回,提升微信登录的流畅性与成功率。网站内嵌二维码微信登录JS实现办法:
步骤一:在页面中先引入如下JS文件(支持https)
步骤二:在需要使用微信登录的地方实例以下JS对象:
varobj = newWxLogin({
id:"login_container",
appid: "",
scope: "",
redirect_uri: "",
state: "",
style: "",
href: ""
});
(2)第二步:通过code获取access_token
api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code
(3)第三步:通过access_token调用接口
对于接口作用域(scope),能调用的接口有以下:

其中snsapi_base属于基础接口,若应用已拥有其他scope权限,则默认拥有snsapi_base的权限。使用snsapi_base可以让移动端网页授权绕过跳转授权登录页请求用户授权的动作,直接跳转第三方网页带上授权临时票据(code),但会用户已授权作用域(scope)仅为snsapi_base,从而导致无法获取到需要用户授权才允许获得的数据和基础功能。
(4)获取信息在回调界面中进行登录前处理
通过上面接口,我么可以获得相应的用户身份信息,因此可以结合我们用户数据库进行用户身份的认定和处理,并设置必要的session或者cookie信息等,最后定位带我们的应用主界面即可。