Laravel 5.4 登录 JSON 错误响应



我想发出一个 AJAX 登录请求,如果身份验证失败,身份验证错误消息应在 JSON 对象中返回。最好的方法是什么?

提前感谢您的回答!

编辑:

我使用php artisan make:auth命令生成身份验证。

身份验证失败的可能性有两种:

  1. 请求验证失败
  2. 凭据无效

当请求验证失败时,返回的错误会根据请求的预期进行调整,因此如果是 JSON,它将在 JSON 响应中返回错误。

问题在于第二种情况,在这种情况下,您可以简单地执行以下操作:

class LoginController {
use AuthenticatesUsers {
sendFailedLoginResponse as protected traitSendFailedLoginResponse;
}
protected function sendFailedLoginResponse(Request $request) {
if ($request->expectsJson()) {
return response()->json([ "errors" =>  Lang::get('auth.failed') ]);
} else {
return $this->traitSendFailedLoginResponse($request);
}
}
}

最新更新