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: | 2024-11-22 03:01:18 |
Package Statistics | |
---|---|
Total Downloads: | 94 |
Monthly Downloads: | 0 |
Daily Downloads: | 0 |
Total Stars: | 15 |
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"
}
})
...