HTTP Post Angular 中没有正文
HTTP Post with no body in Angular
我想知道如何发送没有正文的 HTTP post 请求(特别是在 Angular 中)。这是我现在正在做的,但我收到错误 Expected 2-3 arguments, but got 1)
。
我知道第二个参数是针对正文的,但我没有将其发送到服务器(是的,我知道 POST 调用会更改系统状态并研究了 THIS问题)。
postRequest(id) {
this.http.post('/api?data=' + id).map(
(response) => {
return response;
}
)
}
看起来这是合适的答案:
postRequest(id) {
this.http.post('/api?data=' + id, null).map(
(response) => {
return response;
}
)
}
如果 null
不工作(客户端 4XX 错误),尝试 {}
JSON:
postRequest(id) {
this.http.post('/api?data=' + id, {}).map((response) => {return response;});
}
使用您的 IDE 转到 POST 方法的定义,您可以看到传递 body: any | null
是可用的输入
post(url: string, body: any | null, options: {
headers?: HttpHeaders | {
[header: string]: string | string[];
};
尝试在不传递 'body' 的情况下调用 HTTP 'Post',并在 Angular 6 -
中出现此错误
如果我们转到 client.d.ts
中 POST 方法的定义,它表明 post 方法需要 'body'或 'null' 值(例如 - body: any | null)-
post(url: string, body: any | null, options?: {
...
}): Observable<Object>;
解决方案-我刚刚添加了'null'并且错误消失了-
postSync(): any {
return this.http.post(`${environment.apiUrl}/xyz/sync-api`, null);
}
我想知道如何发送没有正文的 HTTP post 请求(特别是在 Angular 中)。这是我现在正在做的,但我收到错误 Expected 2-3 arguments, but got 1)
。
我知道第二个参数是针对正文的,但我没有将其发送到服务器(是的,我知道 POST 调用会更改系统状态并研究了 THIS问题)。
postRequest(id) {
this.http.post('/api?data=' + id).map(
(response) => {
return response;
}
)
}
看起来这是合适的答案:
postRequest(id) {
this.http.post('/api?data=' + id, null).map(
(response) => {
return response;
}
)
}
如果 null
不工作(客户端 4XX 错误),尝试 {}
JSON:
postRequest(id) {
this.http.post('/api?data=' + id, {}).map((response) => {return response;});
}
使用您的 IDE 转到 POST 方法的定义,您可以看到传递 body: any | null
是可用的输入
post(url: string, body: any | null, options: {
headers?: HttpHeaders | {
[header: string]: string | string[];
};
尝试在不传递 'body' 的情况下调用 HTTP 'Post',并在 Angular 6 -
中出现此错误如果我们转到 client.d.ts
中 POST 方法的定义,它表明 post 方法需要 'body'或 'null' 值(例如 - body: any | null)-
post(url: string, body: any | null, options?: {
...
}): Observable<Object>;
解决方案-我刚刚添加了'null'并且错误消失了-
postSync(): any {
return this.http.post(`${environment.apiUrl}/xyz/sync-api`, null);
}