在 Angular 应用程序中从 HttpErrorResponse 获取错误消息

Rob*_*lls 3 angular

我有一个 Angular 应用程序,它调用一个 REST API,它可以返回类似于此图像的错误。

在此输入图像描述

如何在 API 调用中解析此内容以提取错误消息?

我正在使用以下代码:

this.authService.login(this.userLogin)
    .pipe(first())
    .subscribe(
        data => {
            this.router.navigate([this.returnUrl]);
        },
        error => {
          console.log(error)
          this.alertService.validationError(error.error);
            this.isRequesting = false;
        });
Run Code Online (Sandbox Code Playgroud)

但是 error.error 给了我一个数组,我不知道其中的键可能是什么 - 在图像中它是 login_failure 但它可能是任何东西,我不知道如何解析它。

Sha*_*uch 5

您可以使用这个小片段来提取第一个错误:

error.error[Object.keys(error.error)[0]];
Run Code Online (Sandbox Code Playgroud)

Object.keys(error.error)对象的键提取为数组,然后您可以像通常在数组中一样访问第一个键。