修复小程序授权

This commit is contained in:
evoxwht 2021-04-20 14:08:25 +08:00
parent 9883969b3d
commit b1865f0dfa
2 changed files with 9 additions and 4 deletions

View File

@ -36,11 +36,12 @@ class AuthController
public function mp_auth(Request $request)
{
$cache_key = '';
list($code, $post_cache_key, $login_type) = UtilService::postMore([
list($codes, $post_cache_key, $login_type) = UtilService::postMore([
['code', ''],
['cache_key', ''],
['login_type', '']
], $request, true);
$code = isset($codes['code']) ? $codes['code'] : $codes;
$session_key = Cache::get('eb_api_code_' . $post_cache_key);
if (!$code && !$session_key)
return app('json')->fail('授权失败,参数有误');
@ -54,7 +55,6 @@ class AuthController
return app('json')->fail('获取session_key失败,请检查您的配置!', ['line' => $e->getLine(), 'message' => $e->getMessage()]);
}
}
$data = UtilService::postMore([
['spread_spid', 0],
['spread_code', ''],
@ -68,6 +68,10 @@ class AuthController
if ($e->getCode() == '-41003') return app('json')->fail('获取会话密匙失败');
}
if (!isset($userInfoCong['openid'])) return app('json')->fail('openid获取失败');
if(isset($codes['code']) && !WechatUser::where('routine_openid', $userInfoCong['openid'])->value('uid')){
return app('json')->fail('请先授权');
}
$userInfo['unionId'] = isset($userInfoCong['unionid']) ? $userInfoCong['unionid'] : '';
$userInfo['openId'] = $userInfoCong['openid'];
$userInfo['spid'] = $data['spread_spid'];
@ -81,6 +85,7 @@ class AuthController
else
$token = UserToken::createToken($userInfo, 'routine');
if ($token) {
User::updateWechatUser(['code' => $data['spread_spid']], $uid);
event('UserLogin', [$userInfo, $token]);
return app('json')->successful('登陆成功!', [
'token' => $token->token,

View File

@ -153,7 +153,7 @@ const getUserProfile = function(code) {
wx.getUserProfile({
lang: 'zh_CN',
desc: '用于完善会员资料', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
success(user) {
success(res) {
resolve(res);
},
fail(res) {
@ -214,7 +214,7 @@ const chekWxLogin = function() {
fail() {
getCodeLogin((code) => {
wxgetUserInfo().then(userInfo => {
userInfo.code = code.code;
userInfo.code = code;
return resolve({
userInfo: userInfo,
isLogin: false