更新漏掉的登录接口日志

This commit is contained in:
tsf 2024-09-30 17:01:24 +08:00
parent d7a9bf5154
commit 0f2e658bec
1 changed files with 255 additions and 250 deletions

View File

@ -21,286 +21,291 @@ class Login extends Base{
// 注册 // 注册
public function register_action($data = ['data'=>18530934717,'password'=>'ceshi','code'=>'746119']){ public function register_action($data = ['data'=>18530934717,'password'=>'ceshi','code'=>'746119']){
// try { try {
// // 你的业务逻辑 // 你的业务逻辑
// $return_data = // 验证是否前段发送过来的数据
// // 成功 if(count(input('post.')) > 0){
// $this->record_api_log($data, null, $return_data); $data = input('post.');
// return $return_data; }
// } catch (\Exception $e) { // 验证数据项是否完整
// // 捕获异常 if(!array_key_exists('data', $data) || !array_key_exists('password', $data) || !array_key_exists('code', $data)){
// $logContent["flie"] = $e->getFile(); $return_data = $this->msg(10001);
// $logContent["line"] = $e->getLine(); }
// $logContent['all_content'] = "异常信息:\n"; // 验证数据值是否合规
// $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; if(!$data['data'] || !$data['password'] || !$data['code']){
// $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; $return_data = $this->msg(10006);
// $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; }
// $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; // 验证是手机还是邮箱
// $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; $montage_data = $this->is_tel_email($data['data']);
// $this->record_api_log($data, $logContent, null); if($montage_data == false){
// return $this->msg(99999,'接口错误'); $return_data = $this->msg(10005);
// } }
// 验证是否前段发送过来的数据 // 查询账号是否已经注册
if(count(input('post.')) > 0){ $inspect_repeat = Db::table($this->login_use_db_name['1'])->where([$montage_data=>$data['data'],'is_del'=>0])->count();
$data = input('post.'); if($inspect_repeat >= 0){
} $return_data = $this->msg(10002,'注册失败,账号已存在');
// 验证数据项是否完整 }
if(!array_key_exists('data', $data) || !array_key_exists('password', $data) || !array_key_exists('code', $data)){ // 检查验证码
return $this->msg(10001); $code_result = $this->check_code($data['data'],$data['code']);
} if($code_result !== true){
// 验证数据值是否合规 $return_data = $this->msg(10002,$code_result);
if(!$data['data'] || !$data['password'] || !$data['code']){ }
return $this->msg(10006); // 验证完之后
} $set_data = [];
// 验证是手机还是邮箱 if($montage_data == 'tel'){
$montage_data = $this->is_tel_email($data['data']); $set_data['tel'] = $data['data'];
if($montage_data == false){ }else{
return $this->msg(10005); $set_data['email'] = $data['data'];
} }
// 查询账号是否已经注册 $set_data['password'] = $data['password'];
$inspect_repeat = Db::table($this->login_use_db_name['1'])->where([$montage_data=>$data['data'],'is_del'=>0])->count(); $set_data['head_pic'] = $this->default_head_pic;
if($inspect_repeat >= 0){ $set_data['nickname'] = '用户'.time();
return $this->msg(10002,'注册失败,账号已存在'); $set_data['create_time'] = date('Y-m-d H:i:s');
} $set_data['token'] = md5($data['data'].$this->create_random_string(12).time());
// 检查验证码 $result = Db::table($this->login_use_db_name['1'])->insertGetId($set_data);
$code_result = $this->check_code($data['data'],$data['code']); if($result){
if($code_result !== true){ cache($set_data['token'],date('Y-m-d H:i:s'),$this->token_time);
return $this->msg(10002,$code_result); $return_data = $this->msg(['token'=>$set_data['token'],'aan_id'=>$result]);
} }else{
// 验证完之后 $return_data = $this->msg(10002);
$set_data = []; }
if($montage_data == 'tel'){
$set_data['tel'] = $data['data']; // 成功
}else{ $this->record_api_log($data, null, $return_data);
$set_data['email'] = $data['data']; return $return_data;
} } catch (\Exception $e) {
$set_data['password'] = $data['password']; // 捕获异常
$set_data['head_pic'] = $this->default_head_pic; $logContent["flie"] = $e->getFile();
$set_data['nickname'] = '用户'.time(); $logContent["line"] = $e->getLine();
$set_data['create_time'] = date('Y-m-d H:i:s'); $logContent['all_content'] = "异常信息:\n";
$set_data['token'] = md5($data['data'].$this->create_random_string(12).time()); $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n";
$result = Db::table($this->login_use_db_name['1'])->insertGetId($set_data); $logContent['all_content'] .= "代码: " . $e->getCode() . "\n";
if($result){ $logContent['all_content'] .= "文件: " . $e->getFile() . "\n";
cache($set_data['token'],date('Y-m-d H:i:s'),$this->token_time); $logContent['all_content'] .= "行号: " . $e->getLine() . "\n";
return $this->msg(['token'=>$set_data['token'],'aan_id'=>$result]); $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
}else{ $this->record_api_log($data, $logContent, null);
return $this->msg(10002); return $this->msg(99999,'接口错误');
} }
} }
// 重置密码 // 重置密码
public function reset_password($data = ['data'=>'18530934717','password'=>'ceshi1','c_password'=>'ceshi1','code'=>'491661']){ public function reset_password($data = ['data'=>'18530934717','password'=>'ceshi1','c_password'=>'ceshi1','code'=>'491661']){
// try { try {
// // 你的业务逻辑 // 你的业务逻辑
// $return_data = // 验证是否前段发送过来的数据
// // 成功 if(count(input('post.')) > 0){
// $this->record_api_log($data, null, $return_data); $data = input('post.');
// return $return_data; }
// } catch (\Exception $e) { // 验证数据项是否完整
// // 捕获异常 if(!array_key_exists('data', $data) || !array_key_exists('password', $data) || !array_key_exists('c_password', $data) || !array_key_exists('code', $data)){
// $logContent["flie"] = $e->getFile(); $return_data = $this->msg(10001);
// $logContent["line"] = $e->getLine(); }
// $logContent['all_content'] = "异常信息:\n"; // 验证数据值是否合规
// $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; if($data['password'] != $data['c_password']){
// $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; $return_data = $this->msg(10003,'两次密码不一致');
// $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; }
// $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; if($data['password'] == ''){
// $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; $return_data = $this->msg(10003,'密码不能为空');
// $this->record_api_log($data, $logContent, null); }
// return $this->msg(99999,'接口错误'); // 检查验证码
// } $code_result = $this->check_code($data['data'],$data['code']);
// 验证是否前段发送过来的数据 if($code_result !== true){
if(count(input('post.')) > 0){ $return_data = $this->msg(10003,$code_result);
$data = input('post.'); }
} $t_y = $this->is_tel_email($data['data']);
// 验证数据项是否完整 if($t_y === false){
if(!array_key_exists('data', $data) || !array_key_exists('password', $data) || !array_key_exists('c_password', $data) || !array_key_exists('code', $data)){ $return_data = $this->msg(10003,'账号格式错误');
return $this->msg(10001); }
} // 检查账号是否存在
// 验证数据值是否合规 $find_data = Db::table($this->login_use_db_name['1'])->where([$t_y=>$data['data'],'is_del'=>0])->field('id,token')->find();
if($data['password'] != $data['c_password']){ if(!$find_data){
return $this->msg(10003,'两次密码不一致'); $return_data = $this->msg(10003);
} }
if($data['password'] == ''){ $result = Db::table($this->login_use_db_name['1'])->where([$t_y=>$data['data']])->update(['password'=>$data['password']]);
return $this->msg(10003,'密码不能为空'); if($result){
}
// 检查验证码
$code_result = $this->check_code($data['data'],$data['code']);
if($code_result !== true){
return $this->msg(10003,$code_result);
}
$t_y = $this->is_tel_email($data['data']);
if($t_y === false){
return $this->msg(10003,'账号格式错误');
}
// 检查账号是否存在
$find_data = Db::table($this->login_use_db_name['1'])->where([$t_y=>$data['data'],'is_del'=>0])->field('id,token')->find();
if(!$find_data){
return $this->msg(10003);
}
$result = Db::table($this->login_use_db_name['1'])->where([$t_y=>$data['data']])->update(['password'=>$data['password']]);
if($result){
cache($find_data['token'],date('Y-m-d H:i:s'),$this->token_time); cache($find_data['token'],date('Y-m-d H:i:s'),$this->token_time);
return $this->msg(['token'=>$find_data['token'],'aan_id'=>$find_data['id']]); $return_data = $this->msg(['token'=>$find_data['token'],'aan_id'=>$find_data['id']]);
}else{ }else{
return $this->msg(10002); $return_data = $this->msg(10002);
}
// 成功
$this->record_api_log($data, null, $return_data);
return $return_data;
} 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'] .= "行号: " . $e->getLine() . "\n";
$logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
$this->record_api_log($data, $logContent, null);
return $this->msg(99999,'接口错误');
} }
} }
// 登录 // 登录
public function login_action($data = ['data'=>'18530934717','validate_data'=>'0932','type'=>'login','validate_type'=>'password']){ public function login_action($data = ['data'=>'18530934717','validate_data'=>'0932','type'=>'login','validate_type'=>'password']){
// try { try {
// // 你的业务逻辑 // 你的业务逻辑
// $return_data = if(count(input('post.')) > 0){
// // 成功 $data = input('post.');
// $this->record_api_log($data, null, $return_data); }
// return $return_data; if(!array_key_exists('data', $data) || !array_key_exists('validate_data', $data) || !array_key_exists('validate_type', $data)){
// } catch (\Exception $e) { $return_data = $this->msg(10001);
// // 捕获异常 }
// $logContent["flie"] = $e->getFile(); // 检测是否为手机
// $logContent["line"] = $e->getLine(); $montage_data = $this->is_tel_email($data['data']);
// $logContent['all_content'] = "异常信息:\n"; if($montage_data == false){
// $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; $return_data = $this->msg(10005);
// $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; }
// $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; $verify_result[$montage_data] = $data['data'];
// $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; $verify_result['is_del'] = 0;
// $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; // dump($data);
// $this->record_api_log($data, $logContent, null); // die;
// return $this->msg(99999,'接口错误'); // 检测校验途径
// } if($data['validate_type'] == 'code'){
if(count(input('post.')) > 0){ $code_name = $data['data'];
$data = input('post.'); if($this->check_code($code_name,$data['validate_data']) === true){
} $result = Db::table($this->login_use_db_name['1'])->where($verify_result)->field('id,token')->find();
if(!array_key_exists('data', $data) || !array_key_exists('validate_data', $data) || !array_key_exists('validate_type', $data)){
return $this->msg(10001);
}
// 检测是否为手机
$montage_data = $this->is_tel_email($data['data']);
if($montage_data == false){
return $this->msg(10005);
}
$verify_result[$montage_data] = $data['data'];
$verify_result['is_del'] = 0;
// dump($data);
// die;
// 检测校验途径
if($data['validate_type'] == 'code'){
$code_name = $data['data'];
if($this->check_code($code_name,$data['validate_data']) === true){
$result = Db::table($this->login_use_db_name['1'])->where($verify_result)->field('id,token')->find();
if($result){
cache($result['token'],date('Y-m-d H:i:s'),$this->token_time);
return $this->msg(['token'=>$result['token'],'aan_id'=>$result['id']]);
}else{
$set_data['password'] = '';
$set_data[$montage_data] = $data['data'];
$set_data['head_pic'] = $this->default_head_pic;
$set_data['nickname'] = '用户'.$data['data'];
$set_data['create_time'] = date('Y-m-d H:i:s');
$set_data['token'] = md5($data['data'].$this->create_random_string(12).time());
$result = Db::table($this->login_use_db_name['1'])->insertGetId($set_data);
if($result){ if($result){
cache($set_data['token'],date('Y-m-d H:i:s'),$this->token_time); cache($result['token'],date('Y-m-d H:i:s'),$this->token_time);
return $this->msg(['token'=>$set_data['token'],'aan_id'=>$result],'登录成功'); $return_data = $this->msg(['token'=>$result['token'],'aan_id'=>$result['id']]);
}else{ }else{
return $this->msg(10002); $set_data['password'] = '';
$set_data[$montage_data] = $data['data'];
$set_data['head_pic'] = $this->default_head_pic;
$set_data['nickname'] = '用户'.$data['data'];
$set_data['create_time'] = date('Y-m-d H:i:s');
$set_data['token'] = md5($data['data'].$this->create_random_string(12).time());
$result = Db::table($this->login_use_db_name['1'])->insertGetId($set_data);
if($result){
cache($set_data['token'],date('Y-m-d H:i:s'),$this->token_time);
$return_data = $this->msg(['token'=>$set_data['token'],'aan_id'=>$result],'登录成功');
}else{
$return_data = $this->msg(10002);
}
} }
}
}else{
return $this->msg(10003,'登录失败,验证码错误或失效');
}
}else if($data['validate_type'] == 'password'){
// $verify_result['password'] = $data['validate_data'];
$result = Db::table($this->login_use_db_name['1'])->where($verify_result)->field('id,token,password')->find();
if($result){
if($result['password'] == ''){
return $this->msg(10003,'该账户未设密码,请用验证码登录');
}
if($data['validate_data'] != $result['password']){
return $this->msg(10003,'账号密码错误');
}else{ }else{
cache($result['token'],date('Y-m-d H:i:s'),$this->token_time); $return_data = $this->msg(10003,'登录失败,验证码错误或失效');
return $this->msg(['token'=>$result['token'],'aan_id'=>$result['id']],'登录成功'); }
}else if($data['validate_type'] == 'password'){
// $verify_result['password'] = $data['validate_data'];
$result = Db::table($this->login_use_db_name['1'])->where($verify_result)->field('id,token,password')->find();
if($result){
if($result['password'] == ''){
$return_data = $this->msg(10003,'该账户未设密码,请用验证码登录');
}
if($data['validate_data'] != $result['password']){
$return_data = $this->msg(10003,'账号密码错误');
}else{
cache($result['token'],date('Y-m-d H:i:s'),$this->token_time);
$return_data = $this->msg(['token'=>$result['token'],'aan_id'=>$result['id']],'登录成功');
}
}else{
$return_data = $this->msg(10003,'账号未注册,请先注册');
} }
}else{ }else{
return $this->msg(10003,'账号未注册,请先注册'); $return_data = $this->msg(10003,'校验参数错误');
} }
}else{
return $this->msg(10003,'校验参数错误'); // 成功
$this->record_api_log($data, null, $return_data);
return $return_data;
} 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'] .= "行号: " . $e->getLine() . "\n";
$logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
$this->record_api_log($data, $logContent, null);
return $this->msg(99999,'接口错误');
} }
} }
// 退出登录操作 // 退出登录操作
public function user_quit_account($data=['token'=>'0dafb98a10995c98b5a33b7d59d986ca']){ public function user_quit_account($data=['token'=>'0dafb98a10995c98b5a33b7d59d986ca']){
// try { try {
// // 你的业务逻辑 // 你的业务逻辑
// $return_data = if(count(input('post.')) > 0){
// // 成功 $data = input('post.');
// $this->record_api_log($data, null, $return_data); }
// return $return_data; if(!array_key_exists('token', $data)){
// } catch (\Exception $e) { $return_data = $this->msg(10001);
// // 捕获异常 }
// $logContent["flie"] = $e->getFile(); if($this->token_time_validate($data['token']) === false){
// $logContent["line"] = $e->getLine(); $return_data = $this->msg(20001);
// $logContent['all_content'] = "异常信息:\n"; }
// $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; cache($data['token'],NULL);
// $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; $return_data = $this->msg([]);
// $logContent['all_content'] .= "文件: " . $e->getFile() . "\n";
// $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; // 成功
// $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; $this->record_api_log($data, null, $return_data);
// $this->record_api_log($data, $logContent, null); return $return_data;
// return $this->msg(99999,'接口错误'); } catch (\Exception $e) {
// } // 捕获异常
if(count(input('post.')) > 0){ $logContent["flie"] = $e->getFile();
$data = input('post.'); $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'] .= "行号: " . $e->getLine() . "\n";
$logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
$this->record_api_log($data, $logContent, null);
return $this->msg(99999,'接口错误');
} }
if(!array_key_exists('token', $data)){
return $this->msg(10001);
}
if($this->token_time_validate($data['token']) === false){
return $this->msg(20001);
}
cache($data['token'],NULL);
return $this->msg([]);
} }
// 删除账号 // 删除账号
public function delete_account($data=['token'=>'0dafb98a10995c98b5a33b7d59d986ca']){ public function delete_account($data=['token'=>'0dafb98a10995c98b5a33b7d59d986ca']){
// try { try {
// // 你的业务逻辑 // 你的业务逻辑
// $return_data = if(count(input('post.')) > 0){
// // 成功 $data = input('post.');
// $this->record_api_log($data, null, $return_data); }
// return $return_data; if(!array_key_exists('token', $data)){
// } catch (\Exception $e) { $return_data = $this->msg(10001);
// // 捕获异常 }
// $logContent["flie"] = $e->getFile(); $result = Db::table($this->login_use_db_name['1'])->where(['token'=>$data['token']])->update(['is_del'=>1]);
// $logContent["line"] = $e->getLine(); if($result){
// $logContent['all_content'] = "异常信息:\n"; cache($data['token'], NULL);
// $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; $return_data = $this->msg([]);
// $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; }else{
// $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; $return_data = $this->msg(10002);
// $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; }
// $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
// $this->record_api_log($data, $logContent, null); // 成功
// return $this->msg(99999,'接口错误'); $this->record_api_log($data, null, $return_data);
// } return $return_data;
if(count(input('post.')) > 0){ } catch (\Exception $e) {
$data = input('post.'); // 捕获异常
} $logContent["flie"] = $e->getFile();
if(!array_key_exists('token', $data)){ $logContent["line"] = $e->getLine();
return $this->msg(10001); $logContent['all_content'] = "异常信息:\n";
} $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n";
$result = Db::table($this->login_use_db_name['1'])->where(['token'=>$data['token']])->update(['is_del'=>1]); $logContent['all_content'] .= "代码: " . $e->getCode() . "\n";
if($result){ $logContent['all_content'] .= "文件: " . $e->getFile() . "\n";
cache($data['token'], NULL); $logContent['all_content'] .= "行号: " . $e->getLine() . "\n";
return $this->msg([]); $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
}else{ $this->record_api_log($data, $logContent, null);
return $this->msg(10002); return $this->msg(99999,'接口错误');
} }
} }
################################################################接口################################################################ ################################################################接口################################################################