我遇到了 Angular 2 的问题,确实,我需要使用授权标头发送 PUT Http请求,但它不是工作
然而,它与 DELETE , POST 和 GET (代码完全相同)完美配合。
请求
private header = new Headers();
// [...]
launchPutRequest(): Promise<any> {
const url = 'http://myurl.com/';
this.header = new Headers();
this.header.append('Authorization', 'Bearer ' + token);
return this.http.put(url, { headers: this.header })
.toPromise()
.then(response => {
return response.json().msg as any;
});
}
根据这张图片,我认为标题格式不正确,但为什么只有 PUT ?
答案 0 :(得分:3)
您可能收到错误,因为put
请求的签名是:
(url: string, body: any, option?: RequestOptionsArgs)
您正在提供:
(url, options)
如果您没有使用body
参数,我建议您将http呼叫更改为:
return this.http.put(url, null, { headers: this.header })
希望有所帮助。