时间:2021-05-18
在公众号的配置过程中,许多开发者会在菜单中加入HTML5页面,有时在页面内需要访问页面的用户信息,此时就需要网页授权获取用户基本信息
提醒大家:本文介绍讲述的内容是基于yii2.0框架
1、设置授权回调域名:开发 ---> 接口权限
找到“网页授权获取用户基本信息”,点击后面对应的“修改”,在弹框响应位置填写授权回调域名即可,此处的域名不需要加http:// (关于网页授权回调域名的说明详情可参考公众平台开发者文档)
2、获取授权
关于OAuth2.0博主参考的是方倍工作室的博文http://mon\tools\EmojiTool;/*** 微信用户基本信息获取*/class UserinfoClass {/*** 用户授权并获取code * @return string 用户code*/public function getCode($route, $state){$re = new OauthTool;$request = $re->authorize_addr($route, $state);$code = isset($_GET['code']) ? $_GET['code'] : '';return [$request,$code];}/*** 获取用户信息并写入数据库(之后加参数传给code)*/public function info($code) {$re = new OauthTool;//获取access token$access = $re->access_token($code);$token = json_decode($access,true);//header("Content-type: text/html; charset=gbk"); //获取用户信息if(count($token) != ) {$response = $re->userinfo($token['access_token'], $token['openid']);$user = json_decode($response,true);//用户昵称转换//$user['nickname'] = EmojiTool::emoji_trans($user['nickname']);if($model = User::findOne(['openid' => $user['openid'] ])) { //用户已存在更新数据$model->attributes = $user;$model->modify_time = time();$model->save(false);}else{ //用户不存在写入$model = new User;$model->attributes = $user;$model->create_time = time();$model->save(false);}}return isset($model->id) ? $model->id : '';}}
e. 控制器调用(这里只贴其中一个方法)
程序要求用户打开产品列表即获取用户信息并存入数据库,其中设计了几个变量作用如下:
$refresh:判断页面是否刷新,由于首次打开页面未进行oauth验证时才自动请求验证,避免反复刷新,这里用回调的state参数作为判断依据且设state=1(若有特定参数需要可将state赋值为所需值);
$request:即为验证请求地址
f. 视图自动刷新
只需要在视图中添加以下js代码即可
以上内容给大家介绍了微信开发之网页授权获取用户信息(二)的全部叙述,希望本文分享能够给大家带来帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
在腾讯的微信公众平台开发者文档,网页授权获取用户基本信息这一节中写道”在微信公众号请求用户网页授权之前,开发者需要先到公众平台网站的我的服务页中配置授权回调域名
php微信开发获取用户信息获取用户信息的大致算法是用户授权登录第三方网站,重点:scope参数:snsapi_basic静默登录,不需要用户授权,只能获取到op
本文实例讲述了Java实现的微信公众号获取微信用户信息。分享给大家供大家参考,具体如下:注:这里获取用户信息方式和网页授权获取用户信息方式不同。两个access
详解微信开发中snsapi_base和snsapi_userinfo及静默授权的实现snsapi_base与snsapi_userinfo属于微信网页授权获取用
背景vue前后端分离开发微信授权场景app将商品分享到微信朋友圈或者分享给微信好友,用户点击页面时进行微信授权登陆,获取用户信息。问题:没有固定的h5应用首页。