bourse stock
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

55 lines
1.3 KiB

3 months ago
<?php
namespace app\admin\middleware;
use app\utility\BusinessLog;
class AdminLog
{
/**
* 处理请求
*
* @param \think\Request $param
* @param \Closure $next
* @return Response
*/
public function handle($request, \Closure $next)
{
//得到要log的数据
$adminId = $request->user_id;
$pathInfo = $request->pathinfo();
$host = $request->server("HTTP_HOST");
$uri = $request->server("REQUEST_URI");
$ua = $request->server("HTTP_USER_AGENT");
$ip = $request->ip();
//request参数 url上参数
$requestData = $request->request();
//body请求参数
$param = $request->param();
//放入数组
$content = [
"admin_id" => $adminId,
"host" => $host,
"uri" => $uri,
"ua" => $ua,
"ip" => $ip,
"request_param" => json_encode($requestData),
"body_param" => json_encode($param),
"path_info" => '/' . $pathInfo,
"create_date" => date("Y-m-d"),
"create_time" => date("Y-m-d H:i:s")
];
//log
$log = new BusinessLog();
$log->log($content);
//返回
return $next($request);
}
}