HTTP简介
- HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是一种用于分布式、协作式和超媒体信息系统的应用层协议。
- HTTP是万维网的数据通信的基础。
- HTTP工作原理是通过客户端发起请求,创建一个到服务器指定端口(默认是80端口)的TCP连接,服务器作出响应,返回对应信息内容。
HTTP请求
- HTTP/1.1协议中共定义了八种请求方法(也叫“动作”)来操作指定的资源。
GET POST PUT PATCH DELETE HEAD OPTIONS CONNECT
- HTTP客户端请求消息包含四部分:
- 请求行(request line)
- 请求头部(header)
- 空行
- 请求数据
- 通过Chrome查看HTTP请求
- 点击F12 打开 Network
- 打开网站
- 在 Network 处查看 Request Headers并点击「view source」
HTTP响应
- HTTP响应头信息
- 1xx: 指示信息—表示请求已接收,继续处理。
- 2xx: 成功—表示请求已经被成功接收、理解、接受。
- 3xx: 重定向—要完成请求必须进行更进一步的操作。
- 4xx: 客户端错误—请求有语法错误或请求无法实现。
- 5xx: 服务器端错误—服务器未能实现合法的请求。
- HTTP客户端请求消息包含四部分:
1.状态行
2.响应头
3.空行
4.响应体
- 通过Chrome查看HTTP响应
- 点击F12 打开 Network
- 打开网站
- 在 Network 处查看 Response Headers并点击「view source」
cURL的使用
curl命令是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称curl为下载工具。
- 命令实例
curl -s -v -H "zz: xxx" -- "https://www.baidu.com" //GET请求
请求的内容为:
GET / HTTP/1.1
Host: www.baidu.com
User-Agent: curl/7.55.0
Accept: /
zz: xxx
curl -X POST -s -v -H "zz: xxx" -- "https://www.baidu.com"
请求的内容为:
POST / HTTP/1.1
Host: www.baidu.com
User-Agent: curl/7.55.0
Accept: /
zz: xxx
curl -X POST -d "today" -s -v -H "zz: xxx" -- "https://www.baidu.com"
请求的内容为:
POST / HTTP/1.1
Host: www.baidu.com
User-Agent: curl/7.55.0
Accept: /
zz: xxx
Content-Length: 5
Content-Type: application/x-www-form-urlencoded
文章片段摘自网络,如有侵权请联系我