如果用户在您的网站中想用微信帐号进行登录,公众号开发者可以通过此接口获取当前用户基本信息(包括昵称、性别、城市、国家)。利用用户信息,可以实现体验优化、用户来源统计、帐号绑定、用户身份鉴权等功能。请注意,“获取用户基本信息接口是在用户和公众号产生消息交互时,才能根据用户OpenID获取用户基本信息,而网页授权的方式获取用户基本信息,则无需消息交互,只是用户进入到公众号的网页,就可弹出请求用户授权的界面,用户授权后,就可获得其基本信息(此过程开发者甚至不需注册关注公众号和申请服务号。)”
本接口是通过QR二维码加OAuth2.0来完成网页授权的,是安全可靠的,关于OAuth2.0的详细介绍,可以参考OAuth2.0协议标准。
具体而言,QR授权流程分为两部步:
<script src="http://banling.com/weixin/weixinqr.js"></script>
<div id='qr_image_div'></div>
调用creatIframe_QR方法,第一个参数为的实施DOM对像ID , createIframe_QR(对像ID,宽度,高度)
<script>
createIframe_QR("qr_image_div",200,200);
</script>
调用creatIframe_QR方法,第一个参数为的实施DOM对像ID , createIframe_QR(对像ID,宽度,高度)
<script>
function wxloginqr(userinfo){
//请你的服务器已给这个页面会话做登记操作 可以用AJAX或直接js设置cooike再刷新页面等方法
console.log(userinfo);
alert(userinfo.nickname);
//location.reload();//自动刷新页面
}
</script>
返回说明
正确时返回的JSON数据包如下:
{ "openid":"0c46015103af97bb6fadf928a109963d", "nickname": "废客泉", "sex":"1", "province":"PROVINCE" "city":"CITY", "country":"COUNTRY", "headimgurl": "http://wx.qlogo.cn/mmopen/EWo3hwIVSD3LdGnLTpCfPovggZqCtcQYvM8c30hFVL7qZDTF5xgE5rTyj6BeOpPeeEH2PX2ysMBhswV0jfXuvw/0" }
参数 | 描述 |
---|---|
openid | 用户的唯一标识 |
nickname | 用户昵称 |
sex | 用户的性别,值为1时是男性,值为2时是女性,值为0时是未知 |
province | 用户个人资料填写的省份 |
city | 普通用户个人资料填写的城市 |
country | 国家,如中国为CN |
headimgurl | 用户头像,最后一个数值代表正方形头像大小(有0、46、64、96、132数值可选,0代表640*640正方形头像),用户没有头像时该项为空 |
这里不会返回任何错误信息,有返回时就说明微信用户登录成功
查看演示 DEMO