一:安装EasyWechat
EasyWechat文档:https://www.easywechat.com/docs
在Yii使用EasyWechat,有两个拓展可以使用,分别为jianyan74/yii2-easy-wechat 适用于 EasyWeChat 4.x,max-wen/yii2-easy-wechat 适用于 EasyWeChat 3.x,这里我是用的是jianyan74/yii2-easy-wechat拓展
代码语言:javascript复制composer require jianyan74/yii2-easy-wechat
二:配置EasyWechat
1:在config/main.php 的 component中添加
代码语言:javascript复制'wechat' = [
'class' = 'jianyaneasywechatWechat',
'userOptions' = [], // 用户身份类参数
'sessionParam' = 'wechatUser', // 微信用户信息将存储在会话在这个密钥
'returnUrlParam' = '_wechatReturnUrl', // returnUrl 存储在会话中
'rebinds' = [ // 自定义服务模块
]
],
2:在config/params.php文件中添加(这里我只进行小程序的配置.其他配置可参考EasyWechat官网)
代码语言:javascript复制// 微信小程序配置
'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
代码语言:javascript复制$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值
代码语言:javascript复制wx.login({
success (res) {
if (res.code) {
//获取code
console.log(res.code)
})
} else {
console.log('登录失败!' res.errMsg)
}
}
})
到此这篇关于Yii使用EasyWechat实现小程序获取用户的openID的方法的文章就介绍到这了,更多相关Yii 小程序获取用户的openID内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn!