如何使用Wget执行HTTP PUT?


Answers:



52
wget --method=PUT --body-data=<STRING>

这有点晚了,但是在原始帖子之后的某个时候,他们添加了“ --method”选项。我不确定何时添加它,但有关详细信息,请参见https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=684189#24


5
这应该被接受。
Vanuan

3
应该在2014年,2016年或任何时候接受答案。--method param在2010年的wget中没有用:(
BernhardDöbler'16

4
不在忙碌的盒子里
德米特里·明科夫斯基

与身份验证一起使用时似乎不起作用。我尝试wget --method=PUT使用摘要访问身份验证,但是wget不执行与标准GET请求一样的身份验证过程。

--method仍然没有CentOS的使用7
大卫V.

21

由于这是REST介面,因此我想curl与搭配使用-X PUT

curl -i -X PUT http://www.example.tld/rest/updateEntity/1234?active=false

或者,如果您需要从文件(例如XML)“发布”数据,请执行以下操作:

curl -i -X PUT -H "Content-Type: application/xml; charset=utf-8" -d @"/tmp/some-file.xml" http://www.example.tld/rest/updateEntity

6

对我来说,以下工作:

curl -T <file-path> <url>

由于某些原因,当我遵循它时,什么也没发生(也没有错误):

curl -X PUT -d <file-path> <url>         (did not work)

1
-d将发送您在命令行上输入的数据,因此它将尝试以文本形式放置文件路径。
2013年

4

如果您不想使用文件作为数据,则可以执行以下操作。

curl -X PUT -d "something=blabla&somethingelse=blaha" http://www.example.com
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.