【背景知识】

你一定听过或者用过htop 和pssh pscp等用python实现linux当中的top ssh scp 功能的加强! python写的不仅共鞥强,而且有颜色分辨且选项说明和详细!文档比较规范


【httpie模块的安装】

 pip install httpie


使用范围python 2.6 2.7 和python 3中都可以使用


安装之后生成http命令提供使用(在linux sheel中经常用curl 和wget 进行完成日常的工作)


【使用环境】

a. 调试api接口

b. 访问一个网站 但想要颜色分明


【命令帮助信息】

用法


http <请求方法如 HEAD> <url 如www.baidu.com> <请求的头部选项如 User-Agent:bacon/1.0>  


Output Options:

  --print WHAT, -p WHAT

      String specifying what the output should contain:

      

          'H' request headers

          'B' request body

          'h' response headers

          'b' response body

      

    模式输出是 hb 返回响应头部和响应body

Predefined Content Types:

  --json, -j

      (default) Data items from the command line are serialized as a JSON object.

      The Content-Type and Accept headers are set to application/json

      (if not specified).

      

  --form, -f

      Data items from the command line are serialized as form fields.

      

      The Content-Type is set to application/x-www-form-urlencoded (if not

      specified). The presence of any file fields results in a

      multipart/form-data request.


   一般会使用-f 


【命令基本使用】


1 只返回响应头部

http --print h

等于

http HEAD www.baidu.com  

等于

curl -I http:://www.baidu.com   

wKiom1cqABLhWcjlAACd_MPaFMI572.png



2 只返回请求头部


http --print H www.baidu.com


wKioL1cqAUzC23_GAAAaf9ql-QU891.png


3 POST的使用等具体调用api的时候在讲解


http example.org hello=world   # => POST



4 改变请求头部

REQUEST_ITEM 修改的请求项目一定要放在最后面!

4.1修改user-agent()

http --print H  http://www.baidu.com User-Agent:bacon/1.0


4.2 将参数附加到url后面作为参数请求

'==' URL parameters to be appended to the request URI:


http --print H  http://www.baidu.com?name=andy User-Agent:bacon/1.0 

等于

http --print H  http://www.baidu.com User-Agent:bacon/1.0 name==andy

wKioL1cqBE2SBwxrAAAklVzHkxM748.png