0){ $data = input('post.'); } if(!array_key_exists('code', $data)){ // return $this->msg(10001,''); return $this->msg(10001,'code is miss'); } // 校验参数 if (empty($data['code'])) { return $this->msg(10001,'code is miss.'); } $code = $data['code']; $config = [ 'app_id' => $this->app_id, 'app_secret' => $this->app_secret, ]; $url = "https://api.weixin.qq.com/sns/jscode2session?appid={$config['app_id']}&secret={$config['app_secret']}&js_code={$code}&grant_type=authorization_code"; $result = file_get_contents($url); $data = json_decode($result, true); if (isset($data['errcode'])) { // return json(['code' => 500, 'msg' => '获取openid失败:'.$data['errmsg']]); return $this->msg(10002,'获取openid失败:'.$data['errmsg']); } $device_enter = Db::connect('device_enter_db'); $user_find = $device_enter->table('device_user')->where(['openid'=>$data['openid']])->find(); if($user_find){ return $this->msg(['token' => $user_find['token']]); }else{ $token = md5($data['openid']); $user_result = $device_enter->table('device_user') ->insert([ 'openid'=>$data['openid'], 'token'=>$token, 'create_time'=>date('Y-m-d H:i:s') ]); if($user_result){ return $this->msg(['token' => $token]); } } } catch (\Exception $e) { // 捕获异常 $logContent["flie"] = $e->getFile(); $logContent["line"] = $e->getLine(); $logContent['all_content'] = "异常信息:\n"; $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; $logContent['all_content'] .= "方法: " . __METHOD__ . "\n"; $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; $this->record_api_log($data, $logContent, null); return $this->msg(99999); } } }