微信小程序登录
## PHP
public function userlogin(Request $request){
$code = $request->post("code");
$appSecret = "********************";
$appID = "*************";
$url = "https://api.weixin.qq.com/sns/jscode2session?appid=%s&secret=%s&js_code=%s&grant_type=authorization_code";
$url = sprintf($url,$appID,$appSecret,$code);
$client = new Client(['timeout'=>5]);
$response = $client->get($url);
$rel = (string)$response->getBody();
// json
$arr = json_decode($rel,true);
// 写入数据表中
$userInfo = Renting::openIdSet($arr['openid']);
if(empty($userInfo)){
$userInfo = Renting::openIdData(['openid'=>$arr['openid']]);
}
return $userInfo['id'];
}
## 小程序
// 登录请求
wx.login({
timeout:2000,
success:({code})=>{
// code有效期是5分钟
console.log(code);
// 发起request请求到自己的服务器
wx.request({
url: 'http://www.xxx.com/index.php/userlogin',
data: {code},
header:{
'Authorization':wx.getStorageSync('token')
},
method: 'POST',
success:ret=>{
console.log(ret.data)
wx.setStorageSync('userid', ret.data)
}
})
}
})
本作品采用《CC 协议》,转载必须注明作者和本文链接