1、文档在这里 ==>> 授权后接口调用(UnionID)
2、前端登陆成功后,需要提交code给后端,后端接受到请求后,进行处理,下面的例子均为Python版本
-
第一步:通过code获取access_token,unionid和openid,请求方式GET,请求示例:
https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code
``` # 获取unionid server = "https://api.weixin.qq.com/sns/oauth2/access_token?appid={appid}&secret={secret}&code={code}&grant_type=authorization_code".format( appid = qingguo_appid, secret = qingguo_appsecret, code = args['code'] ) r = requests.get(server) result = json.loads(r.text) ```
-
第二步,用第一步获取到的openid和access_token获取用户登陆信息,这里要注意的是,这个接口过来的数据编码是ISO-8859-1,不处理一下的话中文是会乱码的,请求方式GET,请求示例:
https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID
server1 = "https://api.weixin.qq.com/sns/userinfo?access_token={token}&openid={openid}&lang=zh_CN".format(token = result['access_token'], openid = result['openid']) r1 = requests.get(server1) memberInfo = json.loads(r1.text.encode('ISO-8859-1'))
3、后端设计思路
- 第一点:项目没有自己的账号模块,可以使用微信的unionid或openid作为项目的账号,承载信息;
- 第二点:项目有自己的账号模块,可以先用扫码对平台账号和微信账号进行绑定,扫码登陆时就可以以对应的平台账号进行登陆
- 第三点:项目有自己的账号模块,可以扫码登陆后自动创建一个账号并进行绑定,下次扫码登陆时就可以以对应的平台账号进行登陆**
4、PC网站接入微信登陆流程,后端方面完毕