如何在 Lumen(Laravel) 中自定义验证错误的 JSON 格式
How to customize JSON format of error in validation in Lumen(Laravel)
如果从数据库获取数据时出现错误或任何其他问题,我会发送这样的错误消息:
return response()->json(['status' => 'Failed' ,'state'=>'100' , 'message'=>'You have not registered yet.' ], 401);
这给了我一个 JSON,它定义了所有内容,因此无论出现什么问题,我都可以轻松地显示消息。
但是如果验证出错,我似乎没有能力更改错误响应的格式JSON。
$this->validate($request, [
'email' => 'required',
'password' => 'required'
]);
我想按照上面给出的格式自定义错误格式,这样我就不必更改错误显示机制。
您可以手动创建验证器并在验证失败时添加您的自定义响应,如下所示:
$validator = Validator::make($request->all(), [
'email' => 'required',
'password' => 'required'
]);
if ($validator->fails()) {
return response()->json(['status' => 'Failed' ,'state'=>'100' , 'message'=> $validator->errors()->first() ], 401);
}
如果从数据库获取数据时出现错误或任何其他问题,我会发送这样的错误消息:
return response()->json(['status' => 'Failed' ,'state'=>'100' , 'message'=>'You have not registered yet.' ], 401);
这给了我一个 JSON,它定义了所有内容,因此无论出现什么问题,我都可以轻松地显示消息。
但是如果验证出错,我似乎没有能力更改错误响应的格式JSON。
$this->validate($request, [
'email' => 'required',
'password' => 'required'
]);
我想按照上面给出的格式自定义错误格式,这样我就不必更改错误显示机制。
您可以手动创建验证器并在验证失败时添加您的自定义响应,如下所示:
$validator = Validator::make($request->all(), [
'email' => 'required',
'password' => 'required'
]);
if ($validator->fails()) {
return response()->json(['status' => 'Failed' ,'state'=>'100' , 'message'=> $validator->errors()->first() ], 401);
}