Sending HTTP POST Requests With curl
In this snippet, we are going to be taking a look at how we can send HTTP POST
requests using the curl
command line tool. We’ll also be looking at how we can specify a request body as well as the Content-Type
headers
that you typically send alongside POST requests.
Sending a HTTP POST Request with Curl
The curl tool takes in a flag -X
which allows you to specify the HTTP verb you wish to use for the
request. In this case, we want to specify curl -X POST
to signifiy this is an HTTP POST
request.
$ curl -X POST http://api:port/api/v1/path
Adding A Post Body
Now, typically we are sending data alongside the POST request to our API endpoint. In order to do this, we can
use the -d
flag in order to specify the data we wish to send:
$ curl -d '{"hello": "world"}' -X POST http://api:port/api/v1/path
Specifying Headers With Curl
We can specify headers in our curl requests using the -H
like this:
$ curl -d '{"hello": "world"}' -H 'Content-Type: application/json' -X POST http://api:port/api/v1/path