Angular - 如何在服务中模拟 HttpError 响应

Kam*_*aja 3 error-handling mocking http-error typescript angular

如何在 Angular 服务中模拟 HTTP 错误响应?我经常需要处理不同的 HTTP 错误代码,有时我需要实现解决方案,但后端还没有准备好。如何从后端模拟错误?示例代码

  public getData(): Observable<Response> {
    return this.httpClient.get<Response>(`${this.endpoint}`);
  }
Run Code Online (Sandbox Code Playgroud)

Kam*_*aja 7

最简单的解决方案 - 您可以创建一个 HttpErrorResponse 实例,设置错误状态,然后将此对象作为服务假响应返回。

  public getData(): Observable<Response> {
    const error = new HttpErrorResponse({ status: 422 });
    return of(error) as any;
  }

or 
  public getData(): Observable<Response> {
    const error = new HttpErrorResponse({ status: 422 });
    return throwError(error) as any;
  }
Run Code Online (Sandbox Code Playgroud)

  • 因为我想分享我的知识,这是一个很受欢迎的问题。https://stackoverflow.blog/2011/07/01/its-ok-to-ask-and-answer-your-own-questions/ (2认同)