加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

HTTPie:替代Curl和Wget的现代HTTP命令行客户端

发布时间:2019-04-25 01:23:00 所属栏目:Windows 来源:Magesh Maruthamuthu
导读:大多数时间我们会使用 curl 命令或是 wget 命令下载文件或者做其他事。 今天我们将讨论同样的话题。这个实用程序名为 HTTPie。 它是现代命令行 http 客户端,也是 curl 和 wget 命令的最佳替代品。 什么是 HTTPie? HTTPie (发音是 aitch-tee-tee-pie) 是
副标题[/!--empirenews.page--]

HTTPie:替代Curl和Wget的现代HTTP命令行客户端

大多数时间我们会使用 curl 命令或是 wget 命令下载文件或者做其他事。

今天我们将讨论同样的话题。这个实用程序名为 HTTPie。

它是现代命令行 http 客户端,也是 curlwget 命令的最佳替代品。

什么是 HTTPie?

HTTPie (发音是 aitch-tee-tee-pie) 是一个 HTTP 命令行客户端。

HTTPie 工具是现代的 HTTP 命令行客户端,它能通过命令行界面与 Web 服务进行交互。

它提供一个简单的 http 命令,允许使用简单而自然的语法发送任意的 HTTP 请求,并会显示彩色的输出。

HTTPie 能用于测试、调试及与 HTTP 服务器交互。

主要特点

  • 具表达力的和直观语法
  • 格式化的及彩色化的终端输出
  • 内置 JSON 支持
  • 表单和文件上传
  • HTTPS、代理和认证
  • 任意请求数据
  • 自定义头部
  • 持久化会话
  • 类似 wget 的下载
  • 支持 Python 2.7 和 3.x

在 Linux 下如何安装 HTTPie

大部分 Linux 发行版都提供了系统包管理器,可以用它来安装。

Fedora 系统,使用 DNF 命令 来安装 httpie:

  1. $ sudo dnf install httpie

Debian/Ubuntu 系统,使用 APT-GET 命令 或 APT 命令 来安装 HTTPie。

  1. $ sudo apt install httpie

基于 Arch Linux 的系统,使用 Pacman 命令 来安装 HTTPie。

  1. $ sudo pacman -S httpie

RHEL/CentOS 的系统,使用 YUM 命令 来安装 HTTPie。

  1. $ sudo yum install httpie

openSUSE Leap 系统,使用 Zypper 命令 来安装 HTTPie。

  1. $ sudo zypper install httpie

用法

如何使用 HTTPie 请求 URL?

HTTPie 的基本用法是将网站的 URL 作为参数。

  1. # http 2daygeek.com
  2. HTTP/1.1 301 Moved Permanently
  3. CF-RAY: 4c4a618d0c02ce6d-LHR
  4. Cache-Control: max-age=3600
  5. Connection: keep-alive
  6. Date: Tue, 09 Apr 2019 06:21:28 GMT
  7. Expires: Tue, 09 Apr 2019 07:21:28 GMT
  8. Location: https://2daygeek.com/
  9. Server: cloudflare
  10. Transfer-Encoding: chunked
  11. Vary: Accept-Encoding

如何使用 HTTPie 下载文件

你可以使用带 --download 参数的 HTTPie 命令下载文件。类似于 wget 命令。

  1. # http --download https://www.2daygeek.com/wp-content/uploads/2019/04/Anbox-Easy-Way-To-Run-Android-Apps-On-Linux.png
  2. HTTP/1.1 200 OK
  3. Accept-Ranges: bytes
  4. CF-Cache-Status: HIT
  5. CF-RAY: 4c4a65d5ca360a66-LHR
  6. Cache-Control: public, max-age=7200
  7. Connection: keep-alive
  8. Content-Length: 32066
  9. Content-Type: image/png
  10. Date: Tue, 09 Apr 2019 06:24:23 GMT
  11. Expect-CT: max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
  12. Expires: Tue, 09 Apr 2019 08:24:23 GMT
  13. Last-Modified: Mon, 08 Apr 2019 04:54:25 GMT
  14. Server: cloudflare
  15. Set-Cookie: __cfduid=dd2034b2f95ae42047e082f59f2b964f71554791063; expires=Wed, 08-Apr-20 06:24:23 GMT; path=/; domain=.2daygeek.com; HttpOnly; Secure
  16. Vary: Accept-Encoding
  17.  
  18. Downloading 31.31 kB to "Anbox-Easy-Way-To-Run-Android-Apps-On-Linux.png"
  19. Done. 31.31 kB in 0.01187s (2.58 MB/s)

你还可以使用 -o 参数用不同的名称保存输出文件。

  1. # http --download https://www.2daygeek.com/wp-content/uploads/2019/04/Anbox-Easy-Way-To-Run-Android-Apps-On-Linux.png -o Anbox-1.png
  2. HTTP/1.1 200 OK
  3. Accept-Ranges: bytes
  4. CF-Cache-Status: HIT
  5. CF-RAY: 4c4a68194daa0a66-LHR
  6. Cache-Control: public, max-age=7200
  7. Connection: keep-alive
  8. Content-Length: 32066
  9. Content-Type: image/png
  10. Date: Tue, 09 Apr 2019 06:25:56 GMT
  11. Expect-CT: max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
  12. Expires: Tue, 09 Apr 2019 08:25:56 GMT
  13. Last-Modified: Mon, 08 Apr 2019 04:54:25 GMT
  14. Server: cloudflare
  15. Set-Cookie: __cfduid=d3eea753081690f9a2d36495a74407dd71554791156; expires=Wed, 08-Apr-20 06:25:56 GMT; path=/; domain=.2daygeek.com; HttpOnly; Secure
  16. Vary: Accept-Encoding
  17.  
  18. Downloading 31.31 kB to "Anbox-1.png"
  19. Done. 31.31 kB in 0.01551s (1.97 MB/s)

如何使用 HTTPie 恢复部分下载?

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!