You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular中订阅POST请求错误:如何获取并记录响应状态码

如何在Angular HTTP POST请求的错误回调中获取响应状态码?

没问题,我来帮你搞定这个!在Angular的HttpClient抛出的错误回调里,你拿到的error对象其实是HttpErrorResponse类型,它自带了所有你需要的HTTP响应信息,包括状态码。

直接修改你的代码就行,像这样:

this.http.post(this.url, formData, options)
  .subscribe(
    (data) => {
      console.log('success');
      this.getData();
    },
    (error) => {
      // 获取并打印HTTP错误状态码
      console.log('错误状态码:', error.status);
      // 额外:还能拿到状态描述文本,比如"Not Found"或者"Internal Server Error"
      console.log('状态文本:', error.statusText);
      // 如果后端返回了自定义错误内容,用error.error就能拿到
      console.log('服务器返回的错误详情:', error.error);
    }
  );

补充说明:

  • 如果是网络层面的错误(比如断网、请求根本没发出去),error.status会是0,这时候可以针对性处理;
  • error.error的格式取决于后端返回的内容,可能是JSON对象、纯字符串或者其他格式,你可以根据实际情况解析;
  • 如果你用的是TypeScript,最好给error加上类型注解(error: HttpErrorResponse),这样编辑器会给你更友好的代码提示。

内容的提问来源于stack exchange,提问作者Qwe Rty

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:19:31