我抛出一个异常并在handler.php中对其进行处理,但是它没有返回消息: 我的处理程序如下所示:
public function render($request, Exception $exception)
{
if($exception instanceof ModelNotFoundException){
return response()->json([ 'message' => ''.str_replace('App\\', '', $exception->getModel()).' not found.'], 404);
}
if($exception instanceof AuthenticationException){
return response()->json(['message' => "Unauthorized1"], 401);
}
if($exception instanceof InvalidStateException){
return response()->json(['message' => $exception->getMessage()], 400);
}
return parent::render($request, $exception);
}
但是更改仅在我更改状态代码而不是消息时反映出来。在我的前端,我使用axios,当我捕获到异常时,其中没有json。这是我的邮件在Chrome中的外观:
POST http://127.0.0.1:8000/api/login 401 (Unauthorized)
remote.js:11 Error: Request failed with status code 401
at e.exports (spread.js:25)
at e.exports (spread.js:25)
at XMLHttpRequest.d.onreadystatechange (spread.js:25)
这是我的axios请求:
const login = (user) => axios.post(base + 'api/login', user).catch(e => console.log(e));
答案 0 :(得分:0)
实际上是来自axios请求,我应该这样做
catch(e => console.log(e.response));