如何记录所有帖子并获取进出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