如何区分CORS错误和无法访问的服务器?

时间:2019-07-19 11:04:49

标签: angular error-handling

我使用HttpClient(@ angular / common / http)访问rest api。

是否可以(以及如何)区分以下失败的请求原因?

  • 请求被CORS政策阻止
  • 主机无法访问(或其他原因)

在chrome控制台中,我确实看到了有用的错误消息:

error message "Access to XMLHttpRequest at 'http://xyz:8080/a/b/c' from origin 'http://foobar:4200' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource."

但是我找不到从角度代码访问它的方法。

对于我尝试访问错误详细信息的过程,“无法访问的主机”和“被CORS阻止”似乎是相同的。

private handleError<T>(result?: T) {
  return (error: Response|any): Observable<T> => {

    console.log('error.status:');
    console.error(error.status);
    console.log('error:');
    console.error(error);

    return of(result as T);
  };
}

0 个答案:

没有答案