curl put方法 测试http_HTTP接口调试利器!4.8万Star的HTTP命令行客户端!
【導語】:Python實現的HTTP請求命令行客戶端,我理解為curl的Python版本,但是提供了更友好,更易使用的命令及選項。
簡介
HTTPie是使用Python實現的HTTP命令行工具,提供了更人性化、交互性更好的命令和選項,可以用來做測試、調試以及與HTTP API服務器交互,http和https命令可以用來發送任意的http請求,使用自然簡單的語法,提供格式化和顏色輸出。
HTTPie具有以下主要功能特點:
1、自然直觀的語法
2、可格式化終端輸出,包括顏色的區分
3、支持JSON
4、支持表單和文件上傳
5、支持HTTPS、代理和身份驗證
6、可以發送任意請求數據
7、自定義請求頭
8、會話持久化
9、類似wget的下載功能
10、支持Linux、macOS和Windows
11、支持插件
12、完善的文檔支持
下載安裝
項目源碼地址:
https://github.com/httpie/httpie
項目測試demo:
https://httpie.io/run
運行環境要求Python3.6版本及以上。Windows平臺上的安裝需確保setuptools版本是最新的,使用以下命令進行安裝:
$?pip?install?--upgrade?pip?setuptools$?pip?install?--upgrade?httpie其他平臺上的安裝方法參考項目地址中的readme即可,寫得很清晰。同時,HTTPie的官網還提供了一個工具,可以直接在瀏覽器上執行HTTPie命令,用來嘗鮮、測試都很方便。
簡單使用
從官網的幾個例子來看看HTTPie的用法。
1、這行命令表示,向地址httpbin.org發送PUT請求,自定義請求頭為X-API-Token:123,請求數據格式為JSON,具體的鍵值為name=John。從這個例子可以看得出,http命令后面跟隨請求方法(PUT、DELETE、POST等),自定義的請求頭用XX:YY的格式表示,JSON數據用XX=YY表示。
http?PUT?httpbin.org/put?X-API-Token:123?name=John執行結果為:
2、這行命令表示,向地址httpbin.org以表單的方式發送POST請求,-f選項表示表單格式提交數據。?
http -f POST httpbin.org/post hello=World執行結果為:
3、這行命令表示,向地址httpbin.org發送GET請求,-v表示輸出整個HTTP請求響應交換的數據(也有其他選項,比如—headers,-h僅打印響應頭,--body,-b僅打印響應數據)。如果沒有顯式指明請求方法,當沒有發送數據時,默認為GET方法,當有發送數據時,默認為POST方法。
http -v httpbin.org/get執行結果為:
4、這行命令表示,向目標地址發送POST請求。我們知道github是需要登錄認證的,這也是-a(--auth)這個選項的作用,-a后面緊跟著用戶名,在下面命令執行的過程中,會交互式地要求你輸入密碼。
http -a USERNAME POST https://api.github.com/repos/httpie/httpie/issues/83/comments body='HTTPie is awesome! :heart:'執行過程為:
5、這行命令表示,向地址httpbin.org上傳文件data.json,使用了重定向符號作為文件輸入。
http httpbin.org/post < files/data.json相應地,下載文件并重定向到本地保存的例子如下:
http httpbin.org/image/png > image.png以上就是官網提供的幾個簡單例子,但是HTTPie所支持的功能遠遠不止這些,比如mutipart/form-data的文件上傳、HTTP代理轉發、分塊傳輸、HTTPS的證書驗證、指定SSL版本、格式化輸出等許許多多常用、好用的功能,對于經常需要調試HTTP網絡的同學來說,這絕對是一個好工具,相比curl,其命令和選項都更加友好,請各位參考官方文檔,自己去嘗試吧。
-?EOF -?
以上就是這個開源項目的介紹。如果覺得這個項目不錯,歡迎轉發推薦給更多人。
分享、點贊和在看
支持我們分享更多優秀開源項目,謝謝!
總結
以上是生活随笔為你收集整理的curl put方法 测试http_HTTP接口调试利器!4.8万Star的HTTP命令行客户端!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 两台服务器之间mysql数据库怎么做同步
- 下一篇: alxctools索引超出了数组界限_[