我正在laravel中进行集中式错误处理。
我的代码是什么样的:
// Bad request
App::error(function(FormValidationException $e, $code) {
App::abort(400, $e->getErrors());
});
// Unauthenticated
App::error(function(UnauthenticatedExcpetion $e, $code) {
App::abort(401, 'Unauthenticated');
});
// Unauthorized
App::error(function(UnauthorizedExcpetion $e, $code) {
App::abort(403, 'Unauthorized');
});
// Http
App::error(function(HttpException $e, $code) {
return Response::json($e->getMessage(), $code);
});
问题是,最后一个没有从其他的执行。我必须使用Response
,因为其他Angular $http
会成功。
我怎样才能让它发挥作用? (我想保持干燥,所以请不要多Response:json
。
答案 0 :(得分:-1)
全局命名空间中是否有这些例外,或者您确定在文件顶部正确地use
了它们吗?
此外,Exception
和unauthenticated
处理程序中的unauthorised
拼写错误。