如何记录Laravel获取和发布请求



如何记录所有帖子并获取进出Laravel Luma的请求?

我们的路线是这样的:

$router->group(['prefix' => 'mini'], function () use ($router) {
$router->get('/', 'Controller@index');
$router->post('/', 'Controller@index');
$router->get('/paginate', 'Controller@paginate');
$router->post('/paginate', 'Controller@paginate');
$router->get('/debug', 'Controller@debug');
$router->post('/debug', 'Controller@debug');
$router->get('/debug_sql', 'Controller@debug_sql');
$router->post('/debug_sql', 'Controller@debug_sql');
});

您应该创建一个中间件:

<?php
namespace AppHttpMiddleware;
use Closure;
class LogRequest
{
/**
* Handle an incoming request.
*
* @param  IlluminateHttpRequest  $request
* @param  Closure  $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$response = $next($request);
app('log')->info("Request Captured", $request->all());
return $response;
}
}

然后在您的bootstrap/app.php:中引用它

$app->middleware([
AppHttpMiddlewareLogRequest::class
]);

这将在您的流明日志中产生以下内容:

[2022-01-20 22:16:35] local.INFO: Request Captured {"hello":"there"} 

对于给定的GET请求/?hello=there

最新更新