Using curl to test POST data
Basic request passing variables as POST
Use --data or -d option to pass variables to the page.
$ curl -d "user=mylogin&pass=mypass&foo=bar&biz=bash" http://www.mydomain.com/mypage/
Request using basic authentication
Use --user or -u option.
$ curl -u mylogin:mypass -d "user=mylogin&pass=mypass&foo=bar&biz=bash" http://www.mydomain.com/mypage/
Request using Windows integrated authentication
Add --ntlm option.
$ curl -u mylogin:mypass --ntlm -d "user=mylogin&pass=mypass&foo=bar&biz=bash" http://www.mydomain.com/mypage/
Special characters in username or password
Escape special characters with back slash.
$ curl -u mylogin:myp\&ss --ntlm -d "user=mylogin&pass=mypass&foo=bar&biz=bash" http://www.mydomain.com/mypage/
Storing arguments in a text file
Content of file, saved as curlargs.txt:
-d foo=bar&biz=bash http://localhost/mytestpage.html
Run curl using contents of curlargs.txt (in a bash shell):
$ cat curlargs.txt | xargs -n3 curl