<?php namespace App\Http\Requests; use App\Exceptions\InvalidRequestException; use Illuminate\Foundation\Http\FormRequest; use Illuminate\Contracts\Validation\Validator; use Illuminate\Http\Exceptions\HttpResponseException; class BaseRequest extends FormRequest { protected function failedValidation(Validator $validator) { $errors = $validator->errors(); $firstError = $errors->first(); $fields = $errors->keys(); \Log::channel("formRequest")->info( sprintf( "错误:请求参数 %s,错误原因:%s", print_r(request()->all(), true), json_encode($errors->all(), JSON_UNESCAPED_UNICODE) ) ); throw new InvalidRequestException($firstError, $fields[0]); } public function authorize() { return true; } public function validated() { return $this->validator->validated(); } public function __get($key) { if ($key == 'user') { return request()->user; } } }