一、什么是 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:
sudo dnf install httpie
Debian/Ubuntu 系统,使用 APT-GET 命令 或 APT 命令 来安装 HTTPie。
sudo apt install httpie
基于 Arch Linux 的系统,使用 Pacman 命令 来安装 HTTPie。
sudo pacman -S httpie
RHEL/CentOS 的系统,使用 YUM 命令 来安装 HTTPie。
sudo yum install httpie
openSUSE Leap 系统,使用 Zypper 命令 来安装 HTTPie。
sudo zypper install httpie
三、使用 HTTPie
3.1、请求 URL
HTTPie 的基本用法是将网站的 URL 作为参数。
http 链接
发送一个 HTTP GET 请求
http GET 链接
3.2、下载文件
使用带 --download 参数的 HTTPie 命令下载文件。类似于 wget 命令。
http --download 下载链接
使用 -o 参数用不同的名称保存输出文件。
http --download 下载链接 -o 输出文件名称
使用带 -c 参数的 HTTPie 继续下载。
http --download --continue 下载链接 -o 输出文件名称
3.3、上传文件
通过使用带有小于号 < 的 HTTPie 命令上传文件
http https://transfer.sh < Anbox-1.png
3.4、提交表单
使用以下格式提交表单。POST 请求用于向服务器发送数据,例如客户信息、文件上传等。要使用 HTML 表单。
http -f POST 链接 hello='World'
运行下面的指令以查看正在发送的请求。
http -v 链接
3.5、HTTP 认证
当前支持的身份验证认证方案是基本认证(Basic)和摘要验证(Digest)
基本认证:
http -a username:password 链接
摘要验证:
http -A digest -a username:password 链接
提示输入密码:
http -a username 链接