【问题标题】:Angular: How to catch Http Status Code of a failed http.get() methodAngular:如何捕获失败的 http.get() 方法的 Http 状态代码
【发布时间】:2021-11-26 10:58:00
【问题描述】:

我有一个尝试查询后端 API 的 http.get() 方法。给定前端的 ID,在数据库中启用一个属性(这由后端处理) 我是这样实现http方法的:

home.ts

this.service.getZ(id).subscribe((event:any)=>console.log(event))

service.ts

 getz(id):
    return http.get('url'+id,{reportProgress: true,
   responseType: 'text'
}).

现在我需要捕获后端发送的 http 状态代码,因为我需要此状态代码(如 http 200、http 500)来启用前端中的另一个按钮。 但由于某种原因,我无法在 home.ts 的“事件”变量中捕获 http 状态(如上所示)。 在控制台中,我收到此消息: enter image description here

但我只是能够将 http 状态代码提取到变量中。有什么建议吗?

【问题讨论】:

    标签: javascript angular typescript xmlhttprequest


    【解决方案1】:

    因为处理程序只有invoke调用成功。对于错误,还有一个回调。所以将您的代码更改为:-

    this.service.getZ(id).subscribe(
       (event:any)=>console.log(event),
       (err) => console.log(err.statusCode)
    )
    

    【讨论】:

      猜你喜欢
      • 2019-09-18
      • 2021-04-20
      • 1970-01-01
      • 2022-06-23
      • 2020-07-18
      • 1970-01-01
      • 1970-01-01
      • 2016-04-09
      • 1970-01-01
      相关资源
      最近更新 更多