您的位置:首页 > 移动开发 > 微信开发

微信授权详细步骤

2018-04-04 09:50 183 查看
注意:

1. redirect_uri要经过urlencode加密,并且要使用带有https的域名

2. 尤其注意:由于公众号的secret和获取到的access_token安全级别都非常高,必须只保存在服务器,不允许传给客户端。后续刷新access_token、通过access_token获取用户信息等步骤,也必须从服务器发起。

3. code最多五分钟过期

4. 授权后再次访问1中的链接,会短暂显示”您近期已关注该公众号,无需重复关注”,但是后边还是会执行接口访问

5. 如果授权后,不想再次访问授权接口,可以通过调用自定义接口查找session或数据库

6. 普通token用来调用微信的其他接口

公众号可以使用AppID和AppSecret调用本接口来获取access_token,该token需两小时刷新一次

使用测试账号的实践:

【参考链接】https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842

在开发者工具中访问如下链接获取code

https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx845ef52f84d372d7&redirect_uri=https%3a%2f%2fwww.baidu.com&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect

访问回调地址时会将参数带上:https://www.baidu.com/?code=061d7AN61ODKYQ11f8O61CSyN61d7ANm&state=STATE

code:081tayaJ0Taa5j2c6bcJ0xIJaJ0tayaG
state:STATE
from:844b
vit:fps


请求如下路径获取授权token(比较特殊)

https://api.weixin.qq.com/sns/oauth2/access_token?appid=wx845ef52f84d372d7&secret=c32b464b634155256b6965fc7b66b185&code=081tayaJ0Taa5j2c6bcJ0xIJaJ0tayaG&grant_type=authorization_code

返回access_token和openid


访问后返回信息如下:

{

“access_token”: “my-LyKqwgYpEllMW6E6KUcKPqfR5c8Uta-pvdAEPbXbEur-W2ymLYiJ90L1C3WMbe-Vd6Hlkjuk7FKrlvaYa0A”,

“expires_in”: 7200,

“refresh_token”: “qmJ2q-GAJKg2OObdt5kWdVvKwNU4NtDLWdQxU0bceem4jjH3ZtlfI1qiVj1C8R_WSeAoY8YWfpfF9WNDcgsA-A”,

“openid”: “oMDVRxINuXL8hyrnmUizVws56TBM”,

“scope”: “snsapi_userinfo”

}

获取用户信息

访问如下链接:

https://api.weixin.qq.com/sns/userinfo?access_token=my-LyKqwgYpEllMW6E6KUcKPqfR5c8Uta-pvdAEPbXbEur-W2ymLYiJ90L1C3WMbe-Vd6Hlkjuk7FKrlvaYa0A&openid=oMDVRxINuXL8hyrnmUizVws56TBM&lang=zh_CN

结果如下:

{

“openid”: “oMDVRxINuXL8hyrnmUizVws56TBM”,

“nickname”: “敨戕”,

“sex”: 1,

“language”: “zh_CN”,

“city”: “”,

“province”: “”,

“country”: “丕国”,

“headimgurl”: “http://wx.qlogo.cn/mmopen/vi_32/DYAIOgq83ep13nA84lrQxfmH9Q6bZFiagJ807y8MMjVkLKO2XaGicQNE4OKEDnUSWIz7bdtQ3wGMzKib26qMJX6dA/0“,

“privilege”: []

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: