如果摘要授权的错误代码为401,我尝试从http响应中获取标头。
这是我的代码:
this.http.post(this.hostname + ':10000/users/auth2', { })
.subscribe(res => {
console.log(res);
},
error => {
console.log(error);
});
如果发布请求返回200码,则一切正常。 如果我从后端返回401代码,则无法访问标头。
Chrome调试器显示标题。邮递员电话也可以使用摘要身份验证正常工作。
答案 0 :(得分:1)
observe
参数的默认选项为body
,更改方式为
将{observe: 'response'}
添加到您的post
方法中:
this.http.post(this.hostname + ':10000/users/auth2', {}, {observe: 'response'})
.subscribe(res => {
console.log(res);
},
error => {
console.log(error.headers);
});
答案 1 :(得分:0)
我有一个非常相似的问题,我想从响应中获取状态代码。
最终做了类似的事情:
return await this.http
.post<any>(this.hostname + ':10000/users/auth2', {})
.toPromise()
.then(res => res.data, (err:HttpErrorResponse) => err.headers);