2011-12-11 82 views
11

我正在向第三方API發送請求。它說我必須發送一個HTTP PUT到http://example.com/project?id=projectId如何在bash中執行HTTP PUT?

我試着用PHP curl來做這件事,但我沒有得到來自服務器的響應。也許我的代碼有問題,因爲我以前從未使用過PUT。有沒有辦法讓我從bash命令行執行HTTP PUT?如果是這樣,命令是什麼?

+0

我問你需要什麼使用PUT的?所有我需要使用的是GET和POST。 – Dimme

+9

您可以將捲曲用於此目的。 檢查:http://superuser.com/questions/130009/how-can-i-do-a-http-put-with-wget –

+0

我需要它,因爲API說我必須使用它。我不知道爲什麼。我只是將資源添加到項目 – John

回答

7

,捲曲它會是這樣的

curl --request PUT --header "Content-Length: 0" http://website.com/project?id=1 

但像馬蒂亞斯說你可能會想在身體的一些數據,以及使你想要的內容類型和數據,以及(加內容長度會更大)

6

如果你真的只想使用bash,它實際上有一些網絡支持。

echo -e "PUT /project?id=123 HTTP/1.1\r\nHost: website.com\r\n\r\n" > \ 
    /dev/tcp/website.com/80 

但我想你也想發送一些數據在身體?