123456789101112131415161718192021222324252627282930313233 |
- <?php
- namespace App\Http\Middleware;
- use Closure;
- use Illuminate\Http\Request;
- use Illuminate\Support\Carbon;
- use Illuminate\Support\Facades\Auth;
- use Symfony\Component\HttpFoundation\Response;
- use hisorange\BrowserDetect\Parser as Browser;
- class SystemOperationLog
- {
- /**
- * Handle an incoming request.
- *
- * @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
- */
- public function handle(Request $request, Closure $next): Response
- {
- \App\Models\SystemOperationLog::query()->create([
- 'ip' => $request->getClientIp(),
- 'request_at' => Carbon::now(),
- 'user_id' => Auth::id(),
- 'url' => substr($request->getRequestUri(), 0, 250),
- 'method' => $request->getMethod(),
- 'browser' => Browser::browserName(),
- 'platform' => Browser::platformName(),
- ]);
- return $next($request);
- }
- }
|