gpt4 book ai didi

javascript - 没有导出成员 'Headers' 和 RequestOptions

转载 作者:行者123 更新时间:2023-12-02 21:58:20 26 4
gpt4 key购买 nike

https://www.techiediaries.com/ionic-http-post/

我正在遵循本教程。运行 ionicserve 时出现以下错误

ng] ERROR in src/app/home/home.page.ts:2:22 - error TS2305: Module '"../../../node_modules/@angular/common/http"' has no exported member 'Headers'.
[ng] 2 import { HttpClient, Headers, RequestOptions } from '@angular/common/http';
[ng] ~~~~~~~
[ng] src/app/home/home.page.ts:2:31 - error TS2305: Module '"../../../node_modules/@angular/common/http"' has no exported member 'RequestOptions'.
[ng] 2 import { HttpClient, Headers, RequestOptions } from '@angular/common/http';
[ng] ~~~~~~~~~~~~~~
[ng] src/app/home/home.page.ts:28:11 - error TS2339: Property 'http' does not exist on type 'HomePage'.
[ng] 28 this.http.post("http://localhost/android/Api.php?apicall=signup", postData, requestOptions)
[ng] ~~~~
[ng]

最佳答案

您从错误的包中导入了它。另外,Headers 已重命名为 HttpHeaders

尝试以下操作:

import { RequestOptions } from 'http';
import { HttpHeaders } from '@angular/common/http';

此外,您不一定需要 RequestOptions。您也可以像这样直接传递 HttpHeaders:

let headers: HttpHeaders = req.headers;

if (this.authService.checkAuth()) {
const token = 'something';
headers = headers.set('Authorization', `Bearer ${token}`);
}

const authReq = req.clone({ headers });

我还发现 this.http 不存在,因此您需要将其注入(inject)到 constructor() 中,如下所示:

constructor(private http: HttpClient) {}

根据您的情况,您可以像这样发送请求:

this.http.post("http://localhost/android/Api.php?apicall=signup", postData, { headers });

其中 { headers } 是您的 RequestOptions 对象,并且是 { headers: headers }

的简写

(如果键和值相同,则无需定义它们)

希望有帮助:)

关于javascript - 没有导出成员 'Headers' 和 RequestOptions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59945598/

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