首頁 > 軟體

HTTPie - 與Curl和Wget命令類似的現代HTTP用戶端

2020-06-16 16:40:07

HTTPie(發音為aitch-tee-tee-pie)是一個類似cURL的,現代的,使用者友好的,跨平台的命令列HTTP用戶端,用Python編寫。它旨在使CLI與Web服務的互動變得簡單,並且盡可能方便使用者使用。

它有一個簡單的http命令,使使用者能夠使用簡單自然的語法傳送任意HTTP請求。它主要用於測試,無故障偵錯,主要與HTTP伺服器,Web服務和RESTful API互動。

  • HTTPie帶有直觀的UI並支援JSON。
  • 富有表現力和直觀的命令語法。
  • 語法高亮顯示,格式化和彩色化終端輸出。
  • HTTPS,代理和身份驗證支援。
  • 支援表單和檔案上傳。
  • 支援任意請求資料和檔頭。
  • 類似Wget的下載和擴充套件。
  • 支援ython 2.7和3.x.

在本文中,我們將展示如何在Linux中安裝和使用httpie以及一些基本範例。

如何在Linux中安裝和使用HTTPie

大多數Linux發行版都提供了一個HTTPie包,可以使用預設的系統包管理器輕鬆安裝,例如:

# apt-get install httpie  [在 Debian/Ubuntu 上]
# dnf install httpie      [在 Fedora 上]
# yum install httpie      [在 CentOS/RHEL 上]
# pacman -S httpie        [在 Arch Linux 上]

安裝後,httpie的使用語法是:

$ http [options] [METHOD] URL [ITEM [ITEM]]

httpie最基本的用法是提供一個URL作為引數:

$ http linuxidc.com

現在讓我們看一下httpie命令的一些基本用法和範例。

傳送HTTP方法

您可以在請求中傳送HTTP方法,例如,我們將傳送用於從指定資源請求資料的GET方法。 請注意,HTTP方法的名稱恰好位於URL引數之前

$ http GET linuxidc.com

上傳一個檔案

此範例顯示如何使用輸入重定向將檔案上載到transfer.sh。

$ http https://transfer.sh < linuxidc.com.txt

下載檔案

您可以如下所示下載檔案。

$ http https://transfer.sh/VVi8g/linuxidc.com.txt > linuxidc.com.txt  #使用輸出重定向

或者

$ http --download https://transfer.sh/VVi8g/linuxidc.com.txt          #使用wget格式

Transfer.sh  - 從Linux命令列輕鬆分享檔案  https://www.linuxidc.com/Linux/2019-01/156458.htm

提交表格

您還可以將資料提交到表單,如圖所示。

$ http --form POST linuxidc.lan date='Hello World'

檢視請求詳情

要檢視正在傳送的請求,請使用-v選項。

$ http -v --form POST linuxidc.lan date='Hello World'

基本的HTTP身份驗證

HTTPie還支援CLI的基本HTTP身份驗證,形式如下

$ http -a username:password http://linuxidc.lan/admin/

自定義HTTP檔頭

您還可以使用標題:值表示法定義自定義HTTP檔頭。 我們可以使用以下URL來測試它,該URL返回檔頭。 在這裡,我們定義了一個名為'strong> TEST 1.0'的自定義User-Agent:

$ http GET https://www.linuxidc.com/headers User-Agent:'TEST 1.0'

通過執行檢視完整的使用選項列表。

$ http --help

或者

$ man  ttp

您可以從HTTPie Github儲存庫中找到更多用法範例:https://github.com/jakubroztocil/httpie。

HTTPie是一個類似cURL,現代,使用者友好的命令列HTTP用戶端,具有簡單自然的語法,並顯示彩色輸出。 在本文中,我們展示了如何在Linux中安裝和使用httpie。 如果您有任何疑問,請通過下面的評論表聯絡我們。


IT145.com E-mail:sddin#qq.com