【发布时间】:2019-02-13 03:07:29
【问题描述】:
我想截取错误信息而不是错误名称。
目前在 Angular 中使用的拦截器:
@Injectable()
export class ErrorInterceptor implements HttpInterceptor {
constructor(private authenticationService: AuthenticationService) {}
intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
return next.handle(request).pipe(catchError(err => {
if (err.status === 401) {
this.authenticationService.logout();
location.reload(true);
}
const error = err.error.message || err.statusText;
return throwError(error);
}))
}
}
但它只返回“错误请求”而不是来自 API 的错误消息。
public IActionResult Login([FromBody]UserModel user)
{
if (userRepository.CheckIfUserExists(user.Username))
{
if (userRepository.CheckIfPasswordIsCorrect(user))
{
return new JsonResult(userRepository.GetUser(user));
}
else
{
return BadRequest("Test");
}
}
else
{
return BadRequest("Test");
}
}
【问题讨论】:
标签: c# .net angular .net-core asp.net-core-webapi