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

微信订阅号里实现oauth授权登录,并获取用户信息 (完整篇)

2016-05-27 10:18 871 查看
摘要 这段时间一直有人问我,订阅号实现的oauth授权登录的问题,之前写的比较简单,很多人不明白。众所周知,微信公众号分订阅号、服务号、企业号;每个号的用途不一样,接口开放程度也不一样。微信还有个扯淡的开放平台,号称统一管理众多公众号的。反正都是交钱的功能多,两个平台把我弄得傻傻分不清楚。切入正题,上个公司有个微信订阅号,内嵌了一个微网站,并且要实现授权登录。

oauth 授权登录

前段时间一直有人问我有关订阅号实现的oauth授权登录的问题,之前一篇写的比较简单,很多人不明白。

众所周知,微信公众号分订阅号、服务号、企业号;每个号的用途不一样,接口开放程度也不一样。

微信还有个扯淡的开放平台,号称统一管理众多公众号的。反正都是交钱的功能多,两个平台把我弄得傻傻分不清楚。

切入正题,上上个公司有个微信订阅号,内嵌了一个微网站,并且要实现授权登录。

这个授权登录的接口只有认证的服务号才能调用,订阅号要实现这个功能只能另辟蹊径;

这个是微信公众号的api地址

http://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.html

.这个是开放平台的api地址

https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419316505&token=&lang=zh_CN

需要在开放平台交300元认证费开通相关功能,并创建网站应用,等待通过





如果直接使用开放平台的微信登录功能,只能出现基于二维码的扫一扫页面,并且只适用于pc端的微信登录。

开放平台官方提供的认证地址是:
https://open.weixin.qq.com/connect/qrconnect?……
他会生成一个二维码需要微信扫描登陆后获取信息,这和微信内自登陆相差太远

经过不断的摸索,发现一个小捷径:即更换上面的认证地址为:https://open.weixin.qq.com/connect/oauth2/authorize?……

目前这个方法微信没写入开放平台的官方文档,但是却可以实现订阅号的微信内自登陆,不过和服务号的OAuth不同的是,这种方式是登陆操作(snsapi_login必须只能设置成这个),不是直接的获取操作(snsapi_base,snsapi_userinfo)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: