欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Yii使用EasyWechat实现小程序获取用户的openID的方法

程序员文章站 2022-03-08 14:26:33
一:安装easywechateasywechat文档:在yii使用easywechat,有两个拓展可以使用,分别为jianyan74/yii2-easy-wechat 适用于 easywechat 4...

一:安装easywechat

easywechat文档:

在yii使用easywechat,有两个拓展可以使用,分别为jianyan74/yii2-easy-wechat 适用于 easywechat 4.x,max-wen/yii2-easy-wechat 适用于 easywechat 3.x,这里我是用的是jianyan74/yii2-easy-wechat拓展

composer require jianyan74/yii2-easy-wechat

二:配置easywechat

1:在config/main.php 的 component中添加

'wechat' => [ 
  'class' => 'jianyan\easywechat\wechat', 
  'useroptions' => [], // 用户身份类参数 
  'sessionparam' => 'wechatuser', // 微信用户信息将存储在会话在这个密钥 
  'returnurlparam' => '_wechatreturnurl', // returnurl 存储在会话中 
  'rebinds' => [ // 自定义服务模块 
  ] 
], 

2:在config/params.php文件中添加(这里我只进行小程序的配置.其他配置可参考easywechat官网)

// 微信小程序配置 
'wechatminiprogramconfig' => \[ 
  'app\_id' => 'xxxx', 
  'secret' => 'xxxx', 
  // 下面为可选项 
  // 指定 api 调用返回结果的类型:array(default)/collection/object/raw/自定义类名 
  'response\_type' => 'array', 
  //日志配置 
  'log' => \[ 
    'level' => 'debug', 
    'file' => dirname(dirname(\_\_dir\_\_)) . '/api/runtime/wechat.log', 
  \], 
\], 

三:根据前端传来的code获取用户的openid

$request = yii::$app->getrequest(); 
$miniprogram = yii::$app->wechat->miniprogram; 
$code2session = $miniprogram->auth->session($request->post('code', '')); 
$openid = $code2session\['openid'\];//用户的openid 
$sessionkey = $code2session\['session\_key'\];//session\_key 

四:小程序端的code值获取

在小程序端可以使用wx.login方法来获取code值

wx.login({ 
 success (res) { 
  if (res.code) { 
   //获取code 
   console.log(res.code) 
   }) 
  } else { 
   console.log('登录失败!' + res.errmsg) 
  } 
 } 
})

到此这篇关于yii使用easywechat实现小程序获取用户的openid的方法的文章就介绍到这了,更多相关yii 小程序获取用户的openid内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!