Я использовал ниже код для регистрации каждого запроса и ответа для моего API, но теперь он не работает для Laravel 5.2.
Я попытался использовать https://laravel.com/docs/5.2/middleware#terminable-middleware, но не удалось.
use Closure; use Illuminate\Contracts\Routing\TerminableMiddleware; use Illuminate\Support\Facades\Log; class LogAfterRequest implements TerminableMiddleware { public function handle($request, Closure $next) { return $next($request); } public function terminate($request, $response) { $logFile = 'log.txt'; Log::useDailyFiles(storage_path().'/logs/'.$logFile); Log::info('app.requests', ['request' => $request->all(), 'response' => $response->getContent()]); } }
Может ли кто-нибудь предложить мне решение?
Предполагая, что вы используете web
группу для своих route.php, вы должны добавить в app/Kernel.php
в $middlewareGroups
для web
следующее промежуточное программное обеспечение:
\App\Http\Middleware\LogAfterRequest ::class,
Ваш routes.php
должен выглядеть следующим образом:
Route::group(['middleware' => 'web'], function () { // here you put all the routes });
У меня есть решение. проблема заключалась в том, что я добавил «die» в методе контроллера, из-за которого функция завершения не выполняется, и поэтому журнал не генерируется.