Angular:如何捕获失败的 http.get() 方法的 Http 状态代码
Angular: How to catch Http Status Code of a failed http.get() method
我有一个 http.get() 方法试图查询后端 API。在前端给定一个 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 中的 'event' 变量中捕获 http 状态(如上所示)。
在控制台中,我收到此消息:
enter image description here
但我只能将 http 状态代码提取到变量中。有什么建议吗?
因为handler只是invoke调用成功。对于错误还有一个回调。所以将您的代码更改为:-
this.service.getZ(id).subscribe(
(event:any)=>console.log(event),
(err) => console.log(err.statusCode)
)
我有一个 http.get() 方法试图查询后端 API。在前端给定一个 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 中的 'event' 变量中捕获 http 状态(如上所示)。 在控制台中,我收到此消息: enter image description here
但我只能将 http 状态代码提取到变量中。有什么建议吗?
因为handler只是invoke调用成功。对于错误还有一个回调。所以将您的代码更改为:-
this.service.getZ(id).subscribe(
(event:any)=>console.log(event),
(err) => console.log(err.statusCode)
)