I'm wondering how to send an HTTP post request without a body (specifically in Angular). Here's what I'm doing now, but I'm getting the error Expected 2-3 arguments, but got 1)
.
I realize the second argument is for the body, but I'm not sending that to the server (yes, I understand that a POST call changes the state of a system and have looked into THIS question).
postRequest(id) {
this.http.post('/api?data=' + id).map(
(response) => {
return response;
}
)
}
Looks like this is the appropriate answer:
postRequest(id) {
this.http.post('/api?data=' + id, null).map(
(response) => {
return response;
}
)
}
Go to definition of POST method using your IDE and you can see passing either body: any | null
are the available inputs
post(url: string, body: any | null, options: {
headers?: HttpHeaders | {
[header: string]: string | string[];
};
If null
is not working (4XX error client side), try with {}
JSON:
postRequest(id) {
this.http.post('/api?data=' + id, {}).map((response) => {return response;});
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With