HTTP PUT'u Wget ile nasıl yapabilirim?


37

RESTful arayüzüne erişmek için Wget kullanmaya çalışıyorum , ancak HTTP PUT'un Wget ile nasıl yapıldığını çözemiyorum. Nasıl yapabilirim? Yoksa uygun değil mi?

Yanıtlar:



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

Bu biraz geç, ancak orijinal postadan sonra bir noktada, bir "--metod" seçeneği eklediler. Ne zaman eklendiğinden emin değilim, ancak ayrıntılar için https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=684189#24 adresine bakın.


5
Bu cevap kabul edilmelidir.
Vanuan

3
2014, 2016'da veya ne zaman olursa olsun cevap kabul edilmelidir. - method param 2010'da boşuna boşuna değildi :(
Bernhard Döbler

4
Meşgul kutusunda değil
Dmitry Minkovsky 10.07.2017

Kimlik doğrulama ile kullanırken çalışmıyor gibi görünüyor. wget --method=PUTÖzet erişim kimlik doğrulaması ile denedim , ancak wget standart GET isteğinde olduğu gibi kimlik doğrulama işlemini gerçekleştirmiyor.
Joe,

- metad hala centos 7'de mevcut değil.
David V.

21

Bu olduğundan DİNLENME arayüzü, ben kullanmak istediğiniz düşünüyorum curlile -X PUTbu gibi:

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

Ya da bir XML gibi bir dosyadan veri göndermeniz gerekiyorsa:

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

6

Aşağıdaki benim için çalıştı:

curl -T <file-path> <url>

Nedense onu takip ederken hiçbir şey olmadı (hata da yok):

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

1
-dkomut satırına girdiğiniz verileri gönderir, böylece dosya yolunu metin olarak PUT yapmaya çalışır.
che

4

Bir dosyayı veri olarak kullanmak istemiyorsanız, aşağıdakileri yapabilirsiniz.

curl -X PUT -d "something=blabla&somethingelse=blaha" http://www.example.com
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.