当派发被确定为重要的错误时,我正在将异常日志添加到我的Laravel应用中以发送邮件或电报消息。
实际上,我在每个控制器函数上都使用了一个“ try catch”块来捕获被我的应用程序的任何部分困扰的异常。
我的问题是,Laravel验证如何在不使用return
句子或try catch
块的情况下将异常作为JSON响应返回的情况?
我现在必须对控制器执行的操作:
someAction();
try {
Model::someFunction($params);
catch (MyCustomException $e)
return json()->response($e->getMessage(), 500); // Return json error if fails
}
return anotherAction();
我要对控制器执行的操作:
someAction();
Model::someFunction($params); // Return json error if fails and stop execution
return anotherAction();
Laravel验证的作用
someAction();
$request->validate($validationRules); // Return json error if validation fails and stop execution
return anotherAction();
答案 0 :(得分:0)
您可以创建验证器
<?php
use Validator;
use Illuminate\Http\Request;
class MyController extends Controller {
public function myFunction(Request $request)
{
$validator = Validator::make($request->all(), [
'foo' => 'required',
'bar' => 'required'
]);
if ($validator->passes()) {
}
if ($validator->fails()) {
}
}
}