[英]Form Request Validation returns empty error messages – Laravel 5.3
我在Laravel验证期间遇到错误消息问题。 我有我的自定义请求:
class CreateCv extends Request
{
public function authorize()
{
return true;
}
public function rules()
{
return [
'name' => 'required',
'surname' => 'required',
];
}
public function messages()
{
return [
'name.required' => 'Fill the name!',
'surname.required' => 'Fill the surname!',
];
}
}
然后我有一个带有create方法的控制器:
class CvController extends Controller
{
public function create(Requests\CreateCv $request) {
return response()->json(['ok' => true], 200);
}
}
如果所有内容都填满,则返回json响应"ok" : true
正确。 但是,如果缺少某些内容,则返回空msg: "msg": ""
。 是什么导致此问题?
编辑这里是handler.php文件
class Handler extends ExceptionHandler
{
protected $dontReport = [
AuthorizationException::class,
HttpException::class,
ModelNotFoundException::class,
//ValidationException::class,
];
public function report(Exception $e)
{
parent::report($e);
}
public function render($request, Exception $e)
{
return $e;
//return response()->json(['msg' => $e->getMessage()], 422);
//return parent::render($request, $e);
}
}
您能否在CreateCv类中尝试扩展Illuminate \\ Foundation \\ Http \\ FormRequest。
我最近在为Web应用程序创建API的过程中遇到了此问题,每次我在不使用Accept application / json标头的情况下测试验证字段时,错误对象(我自定义ValidationException以返回错误对象)始终为空。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.