RESTful命令行HTTP客户端(比cURL更简单)。
项目描述
只是一个命令行HTTP客户端(遵循cURL的精神)。
示例用法
HTTP动词作为位置参数指定,后跟要操作的URL。目标是反映标准HTTP头的感觉。例如
$ http get https:///
要提供请求体(例如POST或PUT),使用第三个位置参数
$ http post https:///documents '{"json": "document"}' --content-type="application/json"
注意在末尾指定的任意请求头作为正常CLI选项。任何此类后续CLI选项都将作为请求头传递
$ http get https:/// --x-forwarded-for=10.0.0.50
这将在随后的HTTP请求中转换为 X-Forwarded-For: 10.0.0.50。为了说明这一点,我们可以启用详细输出
$ http get https:/// --x-forwarded-for=10.0.0.50
GET https:///
X-Forwarded-For: 10.0.0.50
200 OK
Status: 200
Content-Length: 396
Content-Location: https:///
Date: Wed, 30 May 2012 19:26:03 GMT
Content-Type: application/json
{
"documents": [
{
"id": "c1be0fde3c0f4d27be15e1e3812cfd65b58325c3",
"value": "a"
},
{
"id": "67dc85dceacd3734ae53f1a69f56785dfe4c4c71",
"value": "b"
}
]
}
内置帮助
示例帮助输出
$ http --help
usage: http [-h] [-t] method url [body] ...
Python HTTP CLI Client
positional arguments:
method HTTP method to use (OPTIONS, GET, HEAD, POST, PUT, DELETE,
TRACE, CONNECT)
url URL to work with
body Request body
headers Additional request headers (keyword=value)
optional arguments:
-h, --help show this help message and exit
-t, --terse Only show the response body