gpt4 book ai didi

Typescript/Angular2 http.post 不设置标题

转载 作者:太空狗 更新时间:2023-10-29 17:30:17 27 4
gpt4 key购买 nike

我正在尝试从 Angular2 beta 8 发布 json,但未传输 header :

import { RequestOptions, RequestMethod, RequestHeaders, RequestOptionsArgs, Http } from 'angular2/http';

// ...
let headers = new Headers(),
body = JSON.stringify({ identifier, password });

headers.append('Content-Type', 'application/json');
headers.append('Accept', 'application/json');
let opts:RequestOptionsArgs = { headers: headers };

this.http.post(this.baseUrl + 'auth/login', body, opts)
.subscribe(
data => console.log(data),
err => console.log(err.json().message),
() => console.log('Authentication Complete')
);

但是 Chrome 中的 XHR 调用没有这些 header 中的任何一个。 Chrome 调试显示 Content-Type header 被标记为 Provisional Headers are Shown 并显示 Content-Type:text/plain;charset=UTF-8。 header 值似乎是正确的:

console.log(headers.get('Content-Type')) // => 'application/json'
console.log(headers.get('Accept')) // => 'application/json'

问题是我正在引入 RequestHeaders,但它应该只是 Headers。为什么它没有给我一个错误,我不知道。

最佳答案

您需要像这样导入 Headers 类(您在从 angular2/http 导入时忘记了它):

import {
RequestOptions,
RequestMethod,
RequestHeaders,
RequestOptionsArgs,
Http,
Headers // <------
} from 'angular2/http';

// ...
let headers = new Headers(),
body = JSON.stringify({ identifier, password });

有关详细信息,请参阅此问题:

关于Typescript/Angular2 http.post 不设置标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35782611/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com