題:
是否有執行HTTP PUT的應用程序?
ChrisW
2019-05-07 12:28:34 UTC
view on stackexchange narkive permalink

常見的HTTP操作是 GET和POST-例如GET由每個網絡瀏覽器實現,而當網頁是Web表單(例如,使用 <input> 和一個Submit按鈕)時,POST也是實現的。

PUT和DELETE呢? ?我想這些可以用來編輯網站的靜態內容(即頁面)。哪些應用程序提供/實現了此功能?

  • 具有用戶界面-即不只是API
  • 可能還有其他(即不一定是龐大而又多功能性應用程序)
  • 可能是免費的(免費和/或免費)並且能夠在Windows上運行?
  • 可以由非技術人員使用(無需編程)的應用程序-用戶,而不僅僅是其他軟件使用的API JavaScript

我想它就像FTP客戶端軟件一樣,除了通過HTTP(S)而不是FTP之外,對嗎?

為這樣的請求道歉基本(也許很平常),我發現Google很難做到這一點。

這個問題-即“ [http] put”-似乎沒有在這裡被問過

我使用了將所有4個動詞用於相應的“ CRUD”操作的API:PUT-創建一個新對象; GET-讀取對象; POST-更新對象;刪除-刪除對象。它似乎太聰明了,而不僅僅是使用基本的GET / POST動詞。
所有相對較新的瀏覽器也都積極使用OPTIONS(用於CORS請求)。此外,瀏覽器(通過JavaScript)也支持PUT / DELETE,而REST服務經常會公開它們。
已創建@Jim POST,並且已更新PUT。參見https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html
實際上,@HansKilian可以同時進行PUT-根據您剛剛鏈接的相同規格
六 答案:
Glorfindel
2019-05-07 13:21:03 UTC
view on stackexchange narkive permalink

為此,我建議郵遞員

  • 它支持所有HTTP動詞,不僅是GET,POST,PUT和DELETE。某些操作可能需要設置HTTP標頭(例如,用於身份驗證),並且它也支持該標頭。
  • 您可以為請求提供原始正文,也可以提供Postman可以轉換成例如 URL編碼的表單內容
  • 它具有UI。
  • 雖然它確實提供了諸如協作之類的附加功能,但我僅將其用於基本功能例如分組和保存請求。
  • 它是免費的,可在Windows和其他幾個操作系統上運行。

enter image description here

您擊敗了我:-)多年來,我一直在使用PostMan進行此類操作,但沒有發現任何更好的方法。
只是為了使其更加完整。以下是一些替代方法:失眠(https://insomnia.rest/)-免費版本爪(https://paw.cloud/)-PaidSoapUI(https://www.soapui.org)-開源版本可用HTTPie(https ://httpie.org/)-開源CLI
您應該將@eKKiM發佈為單獨的答案(如果您提到軟件如何滿足要求,則所有答案都將在此處發布)。評論旨在改善有關Postman的當前帖子。
Austin Hemmelgarn
2019-05-07 23:34:41 UTC
view on stackexchange narkive permalink

可能比您想要的要低一些,但是 cURL可以滿足您的要求。

  • 雖然它主要是供其他軟件使用的庫,它有一個命令行界面,實際上對於大多數任務來說都很容易使用。
  • 它是100%FOSS(使用許可許可證)。
  • 它支持完全任意的HTTP請求類型。顯然,PUT和DELETE可以按要求進行,而且還可以使用其他奇特的東西,例如OPTIONS,TRACE,PATCH和各種WebDAV擴展(實際上是幾乎所有東西,只要它不需要在請求中封裝連接)。 >它還有很多其他有用的功能,例如直接支持大多數身份驗證類型,指定任意請求標頭,提供帶有請求的特定HTTP Cookie集合,HTTP / 2,TLS以及許多其他功能(包括幾乎可笑的內容)
  • 很小(主要是因為它沒有圖形用戶界面)。

使用PUT上傳本地文件的示例命令文件(不進行任何身份驗證,但應該可以與HTTPS一起正常使用):

  curl -X PUT --data-binary @ / some / local / file.txt -o響應。 txt https://example.com/file.txt  

將採用 /some/local/file.txt 的內容,用作請求對 https:// examp的PUT請求的正文le.com ,將響應保存到本地系統上的 response.txt 中,並顯示用於上傳的良好進度表。


請注意,無論您使用哪種工具,Web服務器都必須支持它。在大多數情況下,這意味著該服務器的管理員必須明確啟用對此服務器的支持,但是即使那樣,它也不總是在所有服務器上都表現出完全相同的行為。

此外,您可能還想看看WebDAV中,它涵蓋了這一點,在所有主要平台上均具有良好的客戶端支持,並提供了更多功能(例如創建目錄)。

HTTP PATCH請求也可能引起關注,該請求使您可以上傳補丁(未指定格式)以就地修改資源,而不必重新上傳整個資源。儘管對此的支持比WebDAV或PUT和DELETE還要糟糕。

是的,我使用cURL的頻率很高(編寫了調試例程,可以輸出cURL命令以模擬軟件的請求)。恕我直言,即使您更喜歡GUI,也值得學習,但是我沒有提到它,因為GUI是問題中的要求之一。還是+1。
-1
-1
還會推薦捲曲,效果很好,並且沒有多餘的粗屑
Philipp Wendler
2019-05-07 18:25:44 UTC
view on stackexchange narkive permalink

WebDAV協議使用 PUT (和 DELETE )動詞,因此任何與WebDAV兼容的軟件都可以滿足您的要求。 WebDAV支持廣泛,例如,每個主要的操作系統都在其文件瀏覽器中支持它,包括 Windows資源管理器

(此外,還存在WebDAV擴展,用於管理聯繫人和日曆條目,例如 GroupDAV,其中存在主要郵件客戶端(如Thunderbird和Microsoft Outlook)的插件;還有版本控制系統 Subversion,這是最常用的因此,大多數郵件客戶端和每個SVN客戶端都會回答您有關哪個軟件可以使用 PUT 的問題。但是,這類客戶端對於編輯靜態網站內容並沒有真正的作用。)

哇。您是在說我可以使用Windows資源管理器來讀取/寫入/瀏覽/刪除網絡服務器通過HTTP公開的目錄結構(即“路徑”)中的文件嗎?
是的,**如果**服務器實現了此功能(通過支持WebDAV)並將其允許您使用(通常這種訪問受密碼保護)。
例如,在Windows資源管理器中打開https:\\ live.sysinternals.com([解釋](https://docs.microsoft.com/de-de/sysinternals/))。
那是“遙不可及”。謝謝。
僅在要與之交談的服務器支持WebDAV時才有用,這種情況很少發生。
@James_pic的確如此,但是我要說的是支持“ PUT”但不支持WebDAV(用於OP的服務器)的服務器更為罕見。
@PhilippWendler我在OP的問題中沒有看到任何暗示他們正在處理使用WebDAV的服務器的消息,而且我遇到的大多數接受PUT請求的服務器都不是WebDAV服務器。但是OP接受了這個答案,所以我想您是對的。
@PhilippWendler嘿-有趣。雖然當我使用它時,大約30秒鐘沒有任何反應,直到最終Explorer加載了它。看起來Microsoft修復了WebDAV操作的阻止UI,但是缺少活動指示器或狀態窗口使其對用戶不友好。
-1
@ChrisW我懷疑您會發現,使服務器支持WebDAV並以安全的方式進行支持將需要大量工作(除非您碰巧正在使用已經支持此功能的服務器)。允許用戶編輯網站靜態內容的規範方法是使用內容管理系統,例如WordPress,Joomla,Drupal或SharePoint。其中一些可能還支持WebDAV,但通常具有自己的接口會更容易。
Abhishek Gurjar
2019-05-07 14:56:30 UTC
view on stackexchange narkive permalink

您也可以使用 restlet客戶端,它在chrome上作為擴展程序工作。

  • 在某種程度上免費。
  • 具有開源框架。
  • 支持put和其他http請求。

參考:

https://restlet.com/documentation/client / user-guide / introduction

我看到它說它是“功能強大且易於使用的請求編輯器”。例如,我可以使用它來讀取硬盤驅動器中的文件並將其放置到Web URL嗎?我猜想像[this](https://stackoverflow.com/a/5144072/49942)一樣,但是對於半熟練的用戶,誰更願意使用GUI而不是命令行?
我沒有用到那種程度,但是您可以根據我所知上傳文件。
感謝您的建議-這值得研究。
Alexei Levenkov
2019-05-09 01:25:15 UTC
view on stackexchange narkive permalink

提琴手(像啤酒一樣免費)是另一種通常用於與HTTP相關的工具,包括構造/執行各種請求。主要用途是調查HTTP流量並測試一次性情況,如果要編寫一些多步操作的腳本(例如您擁有的“抓取並上傳本地文件”示例),則不是最佳工具。

請注意,瀏覽器可以使用JavaScript執行各種請求,包括PUT和DELETE(請參閱StackOverflow上的一些示例-如何發送PUT / DELETE請求)-因此,如果您沒有多餘的工具,則可以只使用瀏覽器及其工具JavaScript(但是服務的位置將受到相同的來源/ CORS策略的限制)。

Frank Hopkins
2019-05-10 03:12:53 UTC
view on stackexchange narkive permalink

如果您認為瀏覽器對GET和POST有效,那麼對PUT和DELETE也有效。瀏覽器中運行的JavaScript應用程序經常使用這些文件來修改後端服務器上的數據,例如放置或更新評論時

在這個問題中,我正在尋找一個非技術最終用戶可以使用(無需編程)的應用程序-JavaScript應用程序不使用該應用程序。
@ChrisW儘管許多人似乎已經猜到了,但我認為這個問題並不清楚。對我來說,它是在您尋找支持所有HTTP方法的軟件時讀到的,並且您猜測它可能是哪種軟件...因此,也許可以使問題更具體,以供將來的讀者了解它的要求。


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 4.0許可。
Loading...