千家信息网

php版微信公众平台之微信网页登陆授权的示例分析

发表于:2024-04-13 作者:千家信息网编辑
千家信息网最后更新 2024年04月13日,这篇文章主要为大家展示了"php版微信公众平台之微信网页登陆授权的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"php版微信公众平台之微信网页登陆
千家信息网最后更新 2024年04月13日php版微信公众平台之微信网页登陆授权的示例分析

这篇文章主要为大家展示了"php版微信公众平台之微信网页登陆授权的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"php版微信公众平台之微信网页登陆授权的示例分析"这篇文章吧。

具体如下:

微信公众平台实现微信网页登陆授权开发其实是非常的简单了,因为官方的参考程序了,下面小编就看了一站长根据官方参考做的一个网页登陆授权例子,大家可看看.

文件1:index.php

//换成自己的接口信息$appid = 'XXXXX';header('location:https://open.weixin.qq.com/connect/oauth3/authorize?appid='.$appid.'&redirect_uri=127.0.0.1/oauth.php&response_type=code&scope=snsapi_userinfo&state=123&connect_redirect=1#wechat_redirect');
参数是否必须说明
appid公众号的唯一标识
redirect_uri授权后重定向的回调链接地址,请使用urlencode对链接进行处理
response_type返回类型,请填写code
scope应用授权作用域,snsapi_base(不弹出授权页面,直接跳转,只能获取用户openid),snsapi_userinfo(弹出授权页面,可通过openid拿到昵称、性别、所在地。并且,即使在未关注的情况下,只要用户授权,也能获取其信息)
state重定向后会带上state参数,开发者可以填写a-zA-Z0-9的参数值
#wechat_redirect无论直接打开还是做页面302重定向时候,必须带此参数

文件二:oauth.php,代码如下:

error('授权失败');$token_url = 'https://api.weixin.qq.com/sns/oauth3/access_token?appid='.$appid.'&secret='.$appsecret.'&code='.$code.'&grant_type=authorization_code';$token = json_decode(file_get_contents($token_url));if (isset($token->errcode)) { echo '

错误:

'.$token->errcode; echo '

错误信息:

'.$token->errmsg; exit;}$access_token_url = 'https://api.weixin.qq.com/sns/oauth3/refresh_token?appid='.$appid.'&grant_type=refresh_token&refresh_token='.$token->refresh_token;//转成对象$access_token = json_decode(file_get_contents($access_token_url));if (isset($access_token->errcode)) { echo '

错误:

'.$access_token->errcode; echo '

错误信息:

'.$access_token->errmsg; exit;}$user_info_url = 'https://api.weixin.qq.com/sns/userinfo?access_token='.$access_token->access_token.'&openid='.$access_token->openid.'&lang=zh_CN'; //开源软件:phpfensi.com//转成对象$user_info = json_decode(file_get_contents($user_info_url));if (isset($user_info->errcode)) { echo '

错误:

'.$user_info->errcode; echo '

错误信息:

'.$user_info->errmsg; exit;}//打印用户信息echo '
';print_r($user_info);echo '
';?>
参数描述
openid用户的唯一标识
nickname用户昵称
sex用户的性别,值为1时是男性,值为2时是女性,值为0时是未知
province用户个人资料填写的省份
city普通用户个人资料填写的城市
country国家,如中国为CN
headimgurl用户头像,最后一个数值代表正方形头像大小(有0、46、64、96、132数值可选,0代表640*640正方形头像),用户没有头像时该项为空.
privilege用户特权信息,json数组,如微信沃卡用户为(chinaunicom)
unionid只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段。详见:获取用户个人信息(UnionID机制)

以上是"php版微信公众平台之微信网页登陆授权的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0