歡迎您光臨本站 註冊首頁

Yii使用EasyWechat實現小程式獲取使用者的openID的方法

←手機掃碼閱讀     sl_ivan @ 2020-05-11 , reply:0

一:安裝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拓展
composer require jianyan74/yii2-easy-wechat
二:配置EasyWechat
1:在config/main.php 的 component中新增
'wechat' => [ 'class' => 'jianyaneasywechatWechat', '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) } } })


[sl_ivan ] Yii使用EasyWechat實現小程式獲取使用者的openID的方法已經有117次圍觀

http://coctec.com/docs/program/show-post-233806.html