HTTP请求与响应,如何使用curl命令

关于HTTP

了解HTTP
  不知道大家在浏览网页的过程中是否有留意过浏览器输入框中的网址,比如 https://www.google.com这个称为URL,通过 URL 你可以确定一个「唯一的」网址(地址)。
  最前端的一部分就是我们的HTTP了,中文全称是:超文本传输协议,英文全称是:HyperText Transfer Protocol。细心的你可能已经发现了,我举得例子里是明明是写的HTTPS,别急,听我下面慢慢解释!
HTTP请求

GET方式:

输入命令行:curl -X GET -s -v -H -- "https://www.baidu.com" (curl创造一个请求,并返回)

返回get请求

POST方式:

输入命令行:curl -X POST -d "Hello" -s -v -H -- "https://www.baidu.com"

HTTP请求与响应,如何使用curl命令_第1张图片
返回post请求

请求的格式:

1.动词 路径 协议/版本
2.Key1: value1
2.Key2: value2
2.Key3: value3
2.Content-Type: application/x-www-form-urlencoded
2.Host: www.baidu.com
2.User-Agent: curl/7.54.0

4.要上传的数据

1.请求最多包含四部分,最少包含三部分。(也就是说第四部分可以为空)
2.第三部分永远都是一个回车(\n)
3.动词有 GET POST PUT PATCH DELETE HEAD OPTIONS 等
4.这里的路径包括「查询参数」,但不包括「锚点」
5.如果你没有写路径,那么路径默认为 /
6.第 2 部分中的 Content-Type 标注了第 4 部分的格式

HTTP响应
对应上文GET请求

HTTP请求与响应,如何使用curl命令_第2张图片
返回GET响应

对应上文POST请求
HTTP请求与响应,如何使用curl命令_第3张图片
返回POST响应

1.GET 请求和 POST 请求对应的响应可以一样,也可以不一样
2.响应的第四部分可以很长很长很长

ps:GET只能用来获取信息,POST用来上传信息,Host是可以修改的!

如何用Chrome开发者工具(F12打开)查看 HTTP 请求、响应内容

打开 Network
输入网址
选中第一个
查看 request(查看请求),查看 Response Headers(查看响应),点击「view source」
如果有请求的第四部分,那么在 FormData 或 Payload 里面可以看到
查看 Response 或者 Preview,你会看到响应的第 4 部分


HTTP请求与响应,如何使用curl命令_第4张图片
请求
HTTP请求与响应,如何使用curl命令_第5张图片
响应

curl命令的使用

昨天我已经写过如何使用https://explainshell.com/了,关于curl命令的使用大家可以自行查阅

HTTP请求与响应,如何使用curl命令_第6张图片
上网自己查看吧

对了!!差点忘了,为什么现在都是用HTPPS协议而不使用HTTP协议呢,以登陆为例,如果你登陆的网站使用的是HTTP协议,那么你可以借助开发者工具查看到自己的命令是明文储存在里面的,明文!!!而HTTPS协议会对我们的密码进行加密,即使是你自己使用开发者工具也看不懂!! 相信聪明的小伙伴都懂了吧,咱们下次见O(∩_∩)O

curl -X POST -d "username=ff&password=123" -s -v -H -- "www.baidu.com/path"
POST /path HTTP/1.1

Host: www.baidu.com
User-Agent: curl/7.55.0
Accept: /
Content-Length: 24
Content-Type: application/x-www-form-urlencoded

你可能感兴趣的:(HTTP请求与响应,如何使用curl命令)