| Package Data | |
|---|---|
| Maintainer Username: | vicleos |
| Maintainer Contact: | 510331882@qq.com (vicleos) |
| Package Create Date: | 2017-05-10 |
| Package Last Update: | 2017-05-13 |
| Home Page: | |
| Language: | PHP |
| License: | MIT |
| Last Refreshed: | 2025-11-09 15:02:14 |
| Package Statistics | |
|---|---|
| Total Downloads: | 95 |
| Monthly Downloads: | 0 |
| Daily Downloads: | 0 |
| Total Stars: | 14 |
| Total Watchers: | 3 |
| Total Forks: | 5 |
| Total Open Issues: | 0 |
Laravel 5 微信小程序插件
Api | 说明 | 对应方法 ---|---|--- wx.login | 登录 | $obj->getLoginInfo wx.getUserInfo | 获取用户信息 | $obj->getUserInfo($encryptedData,$iv); reference:https://mp.weixin.qq.com/debug/wxadoc/dev/api/
执行以下命令安装最新稳定版本:
composer require vicleos/wxxcx
或者添加如下信息到你的 composer.json 文件中 :
"vicleos/wxxcx": "1.*"
然后注册服务提供者到 Laravel中 具体位置:/config/app.php 中的 providers 数组:
Vicleos\Wxxcx\WxxcxServiceProvider::class,
发布所需的资源(样式、视图、配置文件等):
php artisan vendor:publish --provider="Vicleos\Wxxcx\WxxcxServiceProvider"
命令完成后,会添加一个wxxcx.php配置文件到您的配置文件夹 如 : /config/wxxcx.php。
生成配置文件后,将小程序的 AppID 和 AppSecret 填写到 /config/wxxcx.php 文件中
...
use Vicleos\Wxxcx\Wxxcx;
...
class YourController extends Controller
{
...
private function getWxxcx()
{
return new Wxxcx(config('wxxcx'));
}
/* 根据 code , encryptedData , iv 获取用户解密后的信息 */
public function getWxUserInfo(Request $rq)
{
//使用 ajax 请求将获取的加密数据和参数发送到这里
//code 在小程序端使用 wx.login 获取
$code = $rq->input('code');
//encryptedData 和 iv 在小程序端使用 wx.getUserInfo 获取
$encryptedData = $rq->input('encryptedData');
$iv = $rq->input('iv');
//小程序类实例化
$wxxcx = $this->getWxxcx();
//根据 code 获取用户 session_key 等信息
$wxxcx->getLoginInfo($code);
//获取解密后的用户信息
return $wxxcx->getUserInfo($encryptedData, $iv);
}
...
}
reponse:
{
"openId": "xxxx",
"nickName": "Vicleos",
"gender": 1,
"language": "zh_CN",
"city": "Beijing",
"province": "Beijing",
"country": "CN",
"avatarUrl": "http://wx.qlogo.cn/mmopen/vi_32/xxxx",
"unionId": "xxxxx",
"watermark": {
"timestamp": 1465251521,
"appid": "your appid"
}
}
wx.login() 中的 code...
wx.login({
success: function (res) {
console.log(res.code);
//结果 "071A8Miq00onPq1BpUgq0NBPiq0xxxx"
}
})
...