Humanized HTTP command line tool——HTTPie
This article is mainly to let readers understand Httpie, the HTTP command line client, and also learn about the interface
Httpie (aych-tee-tee-pie) is an HTTP command line client. The goal is to make the interaction between the CLI and the web service as user-friendly as possible. You can use it to easily debug the interface using http commands. The most commonly used ones are GET and POST.
To give a simple example, if there is a pet store that sells animal food, such as cat food and dog food, then selling food is an interface. If a cat comes, it will sell cat food, and if a dog comes, it will sell dog food. If you want chicken, duck, fish or the like, just modify the method of selling food.
If there is no interface, then you have to write down how to do it for cats, how to do it for dogs, and in the future, when chickens, ducks and fish come, you have to rewrite how to do it for chickens, etc... In short, Interfaces allow programs to be easily changed.
The ultimate goal is to make the interface stable and bug-free. Generally speaking, in addition to the most basic normal use functions, it is also necessary to test critical situations, such as whether data at the boundary of the input data range can be processed; there is also performance testing, which is the use of resources. Interface response time, etc.
Features:
1. Intuitive syntax
2. Formatted and colored terminal output
3. Built-in JSON support
4. Support uploading forms and files
5. HTTPS, proxy and authentication support
6. Support any request data
7. Customize title
8. Persistent session
9. Wget-like download
10. Support Python 2.6, 2.7 and 3.x
11. Support Linux, Mac OS X and Windows
12. Plug-in
13. Documents
14. Test coverage
We first use a picture to compare Httpie and curl:
How to use curl
curl -X METHOD -H HEADER -iThe -i after
means to display the header of the return message. If you use cURL to access OpenStack, this option is essential when obtaining a UUID type token. Then create a request message body, and use curl to send the message. A json message body will be returned. However, the returned json message body is confusing and difficult to read. It is difficult to obtain information from the returned json message body.
HTTPie is written in python and uses the Requests and Pygments libraries internally.
The usage of HTTPie is much more intuitive than cURL. There are not so many options. Basically, you can write whatever you want. The default input and output are in json format (while cURL must specify -H "Content-Type: application/json "). We also implement the above function of obtaining token, and the effect is as follows:
It is obvious that the result structure obtained by using Httpie is clear and clear, and it automatically highlights and formats the returned results.
More:
cURL vs HTTPie on the Command Line for HTTP APIs:
https://www.ctl.io/developers/blog/post/curl-vs-httpie-http-apis
The above is the detailed content of Humanized HTTP command line tool——HTTPie. For more information, please follow other related articles on the PHP Chinese website!

The Internet does not rely on a single operating system, but Linux plays an important role in it. Linux is widely used in servers and network devices and is popular for its stability, security and scalability.

The core of the Linux operating system is its command line interface, which can perform various operations through the command line. 1. File and directory operations use ls, cd, mkdir, rm and other commands to manage files and directories. 2. User and permission management ensures system security and resource allocation through useradd, passwd, chmod and other commands. 3. Process management uses ps, kill and other commands to monitor and control system processes. 4. Network operations include ping, ifconfig, ssh and other commands to configure and manage network connections. 5. System monitoring and maintenance use commands such as top, df, du to understand the system's operating status and resource usage.

Introduction Linux is a powerful operating system favored by developers, system administrators, and power users due to its flexibility and efficiency. However, frequently using long and complex commands can be tedious and er

Linux is suitable for servers, development environments, and embedded systems. 1. As a server operating system, Linux is stable and efficient, and is often used to deploy high-concurrency applications. 2. As a development environment, Linux provides efficient command line tools and package management systems to improve development efficiency. 3. In embedded systems, Linux is lightweight and customizable, suitable for environments with limited resources.

Introduction: Securing the Digital Frontier with Linux-Based Ethical Hacking In our increasingly interconnected world, cybersecurity is paramount. Ethical hacking and penetration testing are vital for proactively identifying and mitigating vulnerabi

The methods for basic Linux learning from scratch include: 1. Understand the file system and command line interface, 2. Master basic commands such as ls, cd, mkdir, 3. Learn file operations, such as creating and editing files, 4. Explore advanced usage such as pipelines and grep commands, 5. Master debugging skills and performance optimization, 6. Continuously improve skills through practice and exploration.

Linux is widely used in servers, embedded systems and desktop environments. 1) In the server field, Linux has become an ideal choice for hosting websites, databases and applications due to its stability and security. 2) In embedded systems, Linux is popular for its high customization and efficiency. 3) In the desktop environment, Linux provides a variety of desktop environments to meet the needs of different users.

The disadvantages of Linux include user experience, software compatibility, hardware support, and learning curve. 1. The user experience is not as friendly as Windows or macOS, and it relies on the command line interface. 2. The software compatibility is not as good as other systems and lacks native versions of many commercial software. 3. Hardware support is not as comprehensive as Windows, and drivers may be compiled manually. 4. The learning curve is steep, and mastering command line operations requires time and patience.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Dreamweaver CS6
Visual web development tools

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SublimeText3 Linux new version
SublimeText3 Linux latest version

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

WebStorm Mac version
Useful JavaScript development tools