HTTPie 是一个简单的现代化命令行 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
  • 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

更多

更多优秀内容,请 关注微信公众号【极客收藏夹】 获取,发送消息可以加群获取最新资讯哦

curl太复杂难用记不住?来试试Httpie一个简单的现代化命令行Http客户端的更多相关文章

  1. [No000017]单词拼写记不住?试试这俩方法-单词拼写,怎么记又快又好?

  2. 【实习记】2014-09-01从复杂到简单:一行命令区间查重+长整型在awk中的bug

        9月1号,导出sql文件后,想到了awk,但很复杂.想到了用sed前期处理+python排序比较的区间查重法.编写加调试用了约3小时. 9月2号,编写C代码的sql语句过程中,发现排序可以交m ...

  3. HTTPie:替代 Curl 和 Wget 的现代 HTTP 命令行客户端

    HTTPie 工具是现代的 HTTP 命令行客户端,它能通过命令行界面与 Web 服务进行交互. -- Magesh Maruthamuthu 大多数时间我们会使用 curl 命令或是 wget 命令 ...

  4. Grid属性太多记不住?【Grid栅格布局可视化编辑器】直观易懂高效,拖拉拽,有手就行!

    手把手教你通过拖拉拽可视化的方式带你练习[Grid栅格布局]的各个属性,直观易懂!再也不愁记不住繁多的Grid属性了.整个过程在众触应用平台进行,不用手写一行CSS代码. grid-auto-flow ...

  5. 分布式进阶(十) linux命令行下载文件以及常用工具:wget、Prozilla、MyGet、Linuxdown、Curl、Axel

    linux命令行下载文件以及常用工具:wget.Prozilla.MyGet.Linuxdown.Curl.Axel 本文介绍常用的几种命令行式的下载工具:wget.Prozilla.MyGet.Li ...

  6. 有了 tldr,妈妈再也不用担心我记不住命令了

    引言 有一次我在培训时说「程序员要善于使用 Terminal 以提高开发效率」,一位程序员反驳道:「这是 21 世纪,我们为什么要用落后的命令行,而不是先进的 GUI?」 是的,在一些人眼里,这个黑黑 ...

  7. 英语每日阅读---8、VOA慢速英语(翻译+字幕+讲解):脸肓症患者记不住别人的脸

    英语每日阅读---8.VOA慢速英语(翻译+字幕+讲解):脸肓症患者记不住别人的脸 一.总结 一句话总结: a.neural abnormalities are more widespread:Duc ...

  8. 这些年一直记不住的 Java I/O

    参考资料 该文中的内容来源于 Oracle 的官方文档.Oracle 在 Java 方面的文档是非常完善的.对 Java 8 感兴趣的朋友,可以从这个总入口 Java SE 8 Documentati ...

  9. MVC4.0中项目发布遇到IE11时session存入URL中,导致记不住密码的问题

    ///MVC4.0中项目发布遇到IE11时session存入URL中,导致记不住密码的问题,在webconfig中配置<system.web><authentication mode ...

随机推荐

  1. mpvue 图片上传预览组件封装

    <template> <div class="j-pic-upload"> <div class="j-upload-btn" @ ...

  2. Z-buffer算法

    1.Z缓冲区(Z-Buffer)算法 1973年,犹他大学学生艾德·卡姆尔(Edwin Catmull)独 立开发出了能跟踪屏幕上每个像素深度的算法 Z-buffer Z-buffer让计算机生成复杂 ...

  3. Python爬虫工程师必学——App数据抓取实战 ✌✌

    Python爬虫工程师必学——App数据抓取实战 (一个人学习或许会很枯燥,但是寻找更多志同道合的朋友一起,学习将会变得更加有意义✌✌) 爬虫分为几大方向,WEB网页数据抓取.APP数据抓取.软件系统 ...

  4. AlexNet网络

    AlexNet 中包含了比较新的技术点,首次在CNN中成功应用了 ReLu .Dropout和LRN等Trick. 1.成功使用了Relu作为CNN的激活函数,并验证其效果在较深的网络中超过了Sigm ...

  5. 除法分块 luogu2261 (坑)

    除法分块 除法分块 是指使用分块计算的方法求S=∑i=1n⌊ki⌋S=\sum^{n}_{i=1}{\lfloor{\frac{k}{i}}\rfloor}S=i=1∑n​⌊ik​⌋的值. 举个例子. ...

  6. [Luogu3420][POI2005]SKA-Piggy Banks

    题目描述 Byteazar the Dragon has NNN piggy banks. Each piggy bank can either be opened with its correspo ...

  7. MyBatis 开发手册

    这一遍看Mybatis的原因是怀念一下去年的 10月24号我写自己第一个项目时使用全配置文件版本的MyBatis,那时我们三个人刚刚大二,说实话,当时还是觉得MyBatis挺难玩的,但是今年再看最新版 ...

  8. Cocos Creator实现1024游戏,免费提供代码。

    效果预览 ​ 获取代码 私信或留言.  游戏介绍 ● Github上的代码,不能进行合并操作,修改以后,功能类似2048,空白块赏随机位置,生成2,可以往左.右.上.下滑动,数字会朝着指定方向运动,相 ...

  9. 【阿里云IoT+YF3300】6.物联网设备报警配置

    纵然5G时代已经在时代的浪潮中展现出了它的身影,但是就目前的物联网环境中,网络问题仍旧是一个比较突出的硬伤.众所周知,在当前的物联网规划中,与其说是实现万物互联,倒不如说是行业指标数据监控.对于一些特 ...

  10. spring cloud alibaba 简介

    ### Spring Cloud Alibaba [官方github地址](https://github.com/alibaba/spring-cloud-alibaba) Spring Cloud ...