最近两天有一个很简单的需求,就是微信公众号授权登录之后,跳转到一个自己网站首页的,在这过程中需要获取微信用户的信息。其实需求很简单,但是因为是第一次涉及,所以刚开始就不知道从何开始。正如那句话,万事开头难吧。然后做完之后,确实感觉比较简单,因为微信api上面写的很清楚,只要按照文档操作就可以了。但是还是想自己写一篇blog来记录一下自己的学习过程。
一、获取测试公众账号及相关配置
1.微信官方文档地址:https://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Overview.html
点击上面链接后,搜接口测试号申请,然后点击链接即可,或者直接打开下面链接:http://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index扫码登录即可。
登录之后就会获得公众号的appId和appsecret两个参数,这将唯一标识该公众号。
2.关注你刚刚申请的公众号,直接扫码即可。扫码成功后,在用户列表那一列将会多一个微信用户,标注的微信号其实就是该用户的openid。
3.配置回调域名
点击修改,会弹出一个框,上面需要你设置服务器的域名。注意只需要填写域名即可不要加http://等信息。
上面就获取到了我们必须用到的测试信息了,下面就是微信授权登录代码部分了。
二、微信授权登录获取用户信息及跳转到指定页面。
1.这块微信文档上说的也非常的清楚,直接上api文档地址:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html
2.下面说一下微信授权使用的是OAuth2.0授权的简要步骤:
第一步:用户同意授权,获取code
第二步:通过code换取网页授权access_token
第三步:刷新access_token(如果需要)
第四步:拉取用户信息(需scope为 snsapi_userinfo)
3.代码部分就不贴了
三、进行本地测试。
测试这块其实是个问题,需要有自己的服务器跟域名。然后给大家推荐两款内网穿透工具吧。一个是花生壳,一个是NATAPP.
最开始我用的是免费版本的花生壳,但是奈何速度极慢,并且我用的那个花生壳版本,在微信端打不开,应该是被微信屏蔽掉了。然后最终是同事向我推荐了natapp工具,然后我是买了一个付费版本的,因为我看见价格也还行,一个月最低12,感觉还算好用吧。下面一章就介绍一下怎么用那个natapp穿透工具了。
参考链接: