后端代码
//微信登陆
public function wxLogin(Request $request)
{
$stdData = array();
//接收小程序端传递的code参数
$code = $request->post('code');
//获取微信授权url
$url = sprintf(config('wx.wxLoginUrl'),config('wx.AppID'),config('wx.AppSecret'),$code);
//获取openid
$data = Curl::curlGet($url);
$user = new User();
//查询是否表中是否有数据
$userData = $user->getOneUser($data['openid']);
//没有则添加数据入库
if(empty($userData)){
$userData = User::create($data);
}
//生成token
$token = Token::getToken($userData->id);
$stdData = [
'code' => 200,
'msg' => '操作成功',
'data' => >$token
];
return json_encode($stdData);
}
config.php下新建wx.php文件
<?php
return [
'AppID' => '',
'AppSecret' => '',
'wxLoginUrl' => 'https://api.weixin.qq.com/sns/jscode2session?appid=%s&secret=%s&js_code=%s&grant_type=authorization_code'
];