如何使用curl发送HTTP POST?

时间:2011-10-21 18:02:27

标签: curl cygwin http-post google-search-appliance

我正在尝试访问Google Search Appliance API:http://code.google.com/apis/searchappliance/documentation/612/gdata/acapi_protocol.html

为了发送请求,我使用的是curl。我的问题是,当我尝试登录时,使用

curl -k -X POST https://ip.ad.dr.ess:8443/accounts/ClientLogin&Email=username&Passwd=password

我得到以下内容:

'Email' is not recognized as an internal or external command,
operable program or batch file.
Passwd: unknown user =password

对此问题的任何帮助将不胜感激。我是新来的卷曲,所以我意识到我可能错了。

我在Windows 7上通过cygwin安装了curl。

3 个答案:

答案 0 :(得分:6)

我很确定你必须按照

的方式做点什么
curl -k -X POST https://ip.ad.dr.ess:8443/accounts/ClientLogin -d Email=username -d Passwd=passwd

有关命令选项的列表,请参阅 http://curl.haxx.se/docs/manpage.html#-d

答案 1 :(得分:1)

尝试使用"附上您的网址。由于您使用的是&和其他特殊的bash字符,因此需要将它们用引号括起来。

这是一个重击问题:

$ curl -k -X POST "https://ip.ad.dr.ess:8443/accounts/ClientLogin&Email=username&Passwd=password"

答案 2 :(得分:0)

shell解释&字符作为命令的结尾:您需要将整个URL放在引号

curl -k -X POST "https://ip.ad.dr.ess:8443/accounts/ClientLogin&Email=username&"