zoukankan      html  css  js  c++  java
  • 人性化的HTTP命令行工具——HTTPie

    Httpie 是什么

    Httpie (aych-tee-tee-pie)是一个 HTTP 的命令行客户端。其目标是让 CLI 和 web 服务之间的交互尽可能的人性化。你可以用它很方便的用 http 的命令调试接口,最常用的应该就是 GET 和 POST 了。

    接口是什么

    举个简单形象的例子,如果有一家宠物店卖动物口粮,比如猫粮狗粮,那么出售粮食就是一个接口,来的是猫就卖猫粮,来的是狗卖狗粮,以后来个什么鸡鸭鱼之类的只要修改一下这个出售粮食的方法即可。

    如果没有接口,那么就要写好对猫怎么做,对狗怎么做,而且以后对鸡鸭鱼这些来了还要重新写对鸡怎么做等等等等……简而言之,接口可以让程序便于变化。

    为什么要调试接口

    最终的目的就是使接口稳定,没有 bug 。一般来说除了最基础的正常使用功能之外,还需要测试临界时的情况,比如说对处于可输入数据范围边界上的数据是否能够处理;还有性能测试,这部分就是使用资源的情况,接口响应时间等。

    关于 Httpie

    特点:
    1、直观的语法
    2、格式化和色彩化的终端输出
    3、内置 JSON 支持
    4、支持上传表单和文件
    5、HTTPS、代理和认证支持
    6、支持任意请求数据
    7、自定义标题
    8、持久性会话
    9、类 Wget 下载
    10、支持 Python 2.6, 2.7 和 3.x
    11、支持 Linux, Mac OS X 和 Windows
    12、插件
    13、文档
    14、测试覆盖率

    Curl VS Httpie

    我们首先用一张图来进行比对 Httpie 与 curl :

    人性化的HTTP命令行工具——HTTPie人性化的HTTP命令行工具——HTTPie

    我们可以通过添加之前的用户名和密码来发送成功请求:

    curl 的使用方法

    curl -X METHOD -H HEADER -i
    

    后面的-i是表示显示返回消息的头部,如果你使用 cURL 访问 OpenStack,那么这个选项在获取 UUID 类型的 token 时必不可少。然后创建请求消息体,在使用 curl 来发送消息,会返回 json 消息体,但返回的 json 消息体比较混乱,不便阅读,如果想从返回的 json 消息体中获取一下信息是比较困难的。

    人性化的HTTP命令行工具——HTTPie人性化的HTTP命令行工具——HTTPie

    Httpie的使用方法

    HTTPie 基于 python 编写,内部使用了 Requests 和 Pygments 库。

    HTTPie 的用法要比 cURL 直观很多,没有那么多选项,基本上心里怎么想就怎么写,默认输入和输出都是 json 格式 (而 cURL 必须要指定 -H “Content-Type: application/json”)。我们同样实现上面获取 token 的功能,效果如下:
    人性化的HTTP命令行工具——HTTPie人性化的HTTP命令行工具——HTTPie

    很明显的能看出,使用 Httpie 所得到的结果结构的清晰明了,它对返回的结果自动做了高亮和格式化。

    更多:

    cURL vs HTTPie on the Command Line for HTTP APIs:

    https://www.ctl.io/developers/blog/post/curl-vs-httpie-http-apis

    原文来自:https://openingsource.org/2203/

    本文地址:https://www.linuxprobe.com/http-httpie-command.html编辑:杨斌斌,审核员:逄增宝

    本文原创地址:https://www.linuxprobe.com/http-httpie-command.html

  • 相关阅读:
    rest framework 认证 权限 频率
    rest framework 视图,路由
    rest framework 序列化
    10.3 Vue 路由系统
    10.4 Vue 父子传值
    10.2 Vue 环境安装
    10.1 ES6 的新增特性以及简单语法
    Django 跨域请求处理
    20190827 On Java8 第十四章 流式编程
    20190825 On Java8 第十三章 函数式编程
  • 原文地址:https://www.cnblogs.com/cheyunhua/p/11416944.html
Copyright © 2011-2022 走看看