2017-10-20 88 views
1

我发送错误信息像这样的错误的情况下,从数据库或任何其他问题得到数据:如何自定义错误的JSON格式的验证流明(Laravel)

return response()->json(['status' => 'Failed' ,'state'=>'100' , 'message'=>'You have not registered yet.' ], 401); 

这给了我一个JSON它具有一切定义,因此无论问题出在哪里,我都可以轻松显示消息。

但是如果在验证的情况下发生错误,我似乎没有权力更改错误响应JSON的格式。

$this->validate($request, [ 
    'email' => 'required', 
    'password' => 'required' 
    ]); 

我想自定义上面给出的错误格式,以便我不必更改显示机制的错误。

回答

0

您可以手动创建一个验证,并添加自定义的响应,如果它失败了,就像这样:

$validator = Validator::make($request->all(), [ 
    'email' => 'required', 
    'password' => 'required' 
]); 

if ($validator->fails()) { 
    return response()->json(['status' => 'Failed' ,'state'=>'100' , 'message'=> $validator->errors()->first() ], 401); 
} 
+0

请添加源,因为我已经通过了文档,但无法找到一个很好的解决方案 –

+0

刚用上面的代码示例替换示例中的'$ this-> validate(...)'调用,它应该可以工作! – Tudor

+0

我有它的工作,但一些博客或文档将是我未来的帮助的好选择 –