WgetでHTTP PUTを実行するにはどうすればよいですか?


37

Wgetを使用してRESTfulインターフェイスにアクセスしようとしていますが、WgetでHTTP PUTを実行する方法がわかりません。どうすればいいですか?またはそれは可能ですか?

回答:



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

これは少し遅れますが、元の投稿の後のある時点で、「-method」オプションを追加しました。追加された時期はわかりませんが、詳細についてはhttps://bugs.debian.org/cgi-bin/bugreport.cgi?bug=684189#24を参照してください。


5
これは受け入れられた答えです。
バヌアン

3
2014年、2016年、またはいつでも回答を受け入れる必要があります。--method paramは2010年のwgetでは利用できませんでした:
BernhardDöbler16年

4
忙しいボックスではありません
ドミトリーミンコフスキー

認証で使用すると機能しないようです。wget --method=PUTダイジェストアクセス認証を試しましたが、wgetは標準のGETリクエストのように認証手順を実行しません。
ジョー

--method 7. CentOSのではまだ利用できません
デビッド・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コマンドラインで入力したデータを送信するため、ファイルパスをテキストとしてPUTしようとします。
チェ

4

ファイルをデータとして使用したくない場合は、次のことができます。

curl -X PUT -d "something=blabla&somethingelse=blaha" http://www.example.com
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.