curl太复杂难用记不住?来试试Httpie一个简单的现代化命令
2019-11-13 本文已影响0人
极客收藏夹
image-20191105143302936
iHTTPie 是一个简单的现代化命令行 HTTP 客户端。
交互友好,JSON支持,语法高亮,类wget下载,支持拓展等
功能特性
- 自然而且简单的命令语句
- 格式化且高亮显示输出内容
- 内置 JSON 支持
- 表单和文件上传
- 支持 HTTPS, 代理和授权验证
- 支持多样化的请求数据格式
- 自定义 headers 头
- 持久 sessions 存储
- 类似
wget
的下载模式 - 兼容 Python 2.6, 2.7 以及 3.x
- 支持 Linux, macOS 和 Windows 操作系统
- 插件支持
- 详细的文档说明
- 完善的测试用例覆盖
安装
官网地址 - https://httpie.org/
项目地址 - https://github.com/jakubroztocil/httpie/
项目文档 - https://httpie.org/doc
可以通过包管理工具可以方便的安装它
-
macOS
- Homebrew -
brew install httpie
- MacPorts -
port install httpie
- Homebrew -
-
Linux
-
debian系列 -
apt-get install httpie
-
RPM系列 -
yum install httpie
-
Arch Linux -
pacman -S httpie
-
-
使用Python的Pip安装
-
pip install --upgrade pip setuptools
pip install --upgrade httpie
-
使用
基本语法
http [flags] [METHOD] URL [REQUEST_ITEM [REQUEST_ITEM]]
如: http -f POST example.org name=World
发送 Post 请求
请求包含了 参数
请求方法
URL
请求参数
- 请求方法 - 可选项,未指定时默认使用 GET 请求(有请求参数时 使用 POST)
-
URL - 必选项,请求地址
-
默认缺省协议
http://
,http example.org
等同http http://example.org
-
通过
alias https='http --default-scheme=https'
可以使https
命令设置缺省协议为 https -
本地地址
localhost
支持缩写为:
如http localhost:/foo
等同http :/foo
-
-
参数
-
-f
表单提交 -
-v
显示详细的请求信息 -
-h
仅显示Header -
-b
仅显示Body -
-d
下载文件-
-o
保存文件的文件名 -
-c
断点续传
-
-
--follow
允许重定向-
--all
显示重定向的全部路径 -
--max-redirects=5
最大次数
-
-
--proxy
设置代理,http --proxy=http:http://10.10.1.10:3128 --proxy=https:https://10.10.1.10:1080 example.org
-
-
请求参数
-
:
Http 头参数,如:http example.org X-API-Token:123
-
==
URL 请求参数,如:http example.org name==12
-
=
数据域参数(默认被格式化为JSON,使用-f
可以指定为表单类型form-encoded
),如:http -f POST example.org name=World
-
@file_path
表单文件,如:screenshot@~/Pictures/img.png
- … 更多请查阅官方文档
-
使用效果
下载文件
http -d -o xx.png -b url.cn/5DFeeyg
代理
http --proxy=http:http://127.0.0.1:1086 http://www.google.com
获取Ip信息
https -b api.ip.sb/geoip
重定向过程
http --follow --all -h sogou.com
更多
更多优秀内容,请 关注微信公众号【极客收藏夹】 获取,发送消息可以加群获取最新资讯哦
wx