HTTPie is a recommended alternative to curl because you can do just
$ http POST http://example.com/some/endpoint name=value name1=value1 It speaks JSON by default and will handle both setting the necessary header for you as well encoding data as valid JSON. There is also:
Some-Header:value for headers, and
name==value for query string parameters. If you have a large chunk of data, you can also read it from a file have it be JSON encoded:
[email protected]