找回密码
 加入怎通
查看: 167|回复: 3

http请求响应,curl命令用法

[复制链接]
我来看看 发表于 2023-03-17 17:54:22 | 显示全部楼层 |阅读模式
4 Y, F2 ~9 t" B5 o" c! L1 e, Q

HTTP 请求包括哪些部分,如何用Chrome开发者工具查看 HTTP 请求内容?HTTP 响应包括哪些部分,如何用Chrome开发者工具查看 HTTP 响应内容?如何使用 curl 命令?一、笔记1、李爵士发明了URI(统一资源标识符)、HTTP(超文本传输协议)、HTML(超文本标记语言);

- R- _- c+ Q2 b, R

2、URL(统一资源定位符)、URN(统一资源名称);3、URL组成:协议+域名+路径+查询参数+锚点+端口,http://baidu.com是二级域名,http://www.baidu.com是三级域名;

$ I$ S; ~0 ^' B( ?

4、DNS(域名解析系统):输入域名,输出IP;5、server服务器、client客户端、http协议,一个端口只做1件事,80端口用来服务http;6、浏览器负责发起请求,服务器在 80 端口接收请求,服务器负责返回内容(响应),浏览器负责下载响应内容,HTTP 的作用就是指导浏览器和服务器如何进行沟通;

+ E+ Q' n1 t& R3 ]( A) n

7、状态码解释:https://zh.wikipedia.org/wiki/HTTP%E7%8A%B6%E6%80%81%E7%A0%81​zh.wikipedia.org/wiki/HTTP%E7%8A%B6%E6%80%81%E7%A0%81

7 h2 K3 m$ _' _

二、http请求包含部分1、格式1动词 路径 协议/版本9 T, h, M) p, D( Z: b0 R3 S 2 Key1: value1! O" K1 F0 B- {* Y! z6 T$ O- y 2 Key2: value2 - ]' W' R0 T& i9 V7 l! c 2 Key3: value32 Z6 M. J5 ] z K9 W* u+ M 2 Content-Type: application/x-www-form-urlencoded + z8 m9 E/ a5 l6 o 2 Host: www.baidu.com: K. B& l) L- r( `1 N 2 User-Agent: curl/7.54.0 8 Q" e9 n6 J6 E; P0 j: v 3 - {& N# m. F3 R7 H) c8 l 4 要上传的数据

6 I$ }% b( t) F7 w

解释:请求最多包含4部分,最少包含3部分;第3部分永远是一个回车;动词可以是GET(获取) POST(上传)PUT(整体更新)PATCH(局部更新)DELETE(删除)HEAD OPTIONS等;路径包含查询参数但不包括锚点;如果没有写路径,默认为/;Content-Type标注了第四部分的格式;

5 e' s3 M0 Z) l5 N* c

2、GET请求例子1 GET / HTTP/1.1 3 O4 F5 F! M' x* G 2 Host: www.baidu.com 0 z E1 e1 e' U' U2 ~* o 2 User-Agent: curl/7.54.0, M, q+ r. w9 Z9 }6 p* ` 2 Accept: */*8 P: x! _/ a% b2 E4 c 2 Frank: xxx , d1 D: `* V3 I0 Y, [1 U% } 3

6 {: t) A: U0 x2 I

3、POST请求例子1 POST /path HTTP/1.1; J' t9 {0 k# p, R5 k 2 Host: baidu.com) W2 J# t% e5 K" E1 ^ 2 Accept:application/json . a) J7 Y4 q6 s 2 Conetent-Type:application/x-www-form-urlencoded , L: |8 u# q$ `" R 2 Conetent-Length:1000- F* m7 ~2 A/ q2 k4 g- R 3 % l9 A/ N* j/ ?$ K% S: K/ P 4 username=ff&password=123

) R' k/ @/ @# Z( F' _# C& g* K

三、用Chrome查看请求1、打开 Network2、地址栏输入网址3、在 Network 点击查看 request,点击「view source」点击「view source」点击「view source」

- w* G' M: u4 E8 g$ O0 P1 V6 e& m) ]

4、可以看到请求的前三部分了5、如果有请求的第四部分,那么在 FormData 或 Payload 里面可以看到四、http响应包含部分1、格式1 协议/版本号 状态码 状态解释 4 u; V7 e+ K5 W y5 s; j# \9 Q/ ? 2 Key1: value1 8 I% L( a2 m- l 2 Key2: value2/ \ B2 x! o1 K+ s, E7 u% `2 G3 p 2 Content-Length: 179312 B( R9 h" H5 Q6 e/ z6 d- r: y 2 Content-Type: text/html, d! z+ Y( P) D7 N 3 - O4 \3 B- A" m3 ?! B9 S6 S 4 要下载的内容

. N+ }9 ]; q# b D" {

2、例子HTTP/1.1 302 Found" K. ]( j8 o9 ]3 F: X$ l0 I% X Connection: Keep-Alive! q$ ~5 p" [4 s8 r# q' S. g Content-Length: 17931 % Y' y E S- i4 }3 t" f" Z8 R Content-Type: text/html 1 O0 d7 n5 s" j' X: _9 f Date: Tue, 10 Oct 2017 09:19:47 GMT+ H% U" o6 i1 d$ O9 l5 ^ Etag: "54d9749e-460b" % Y* c& Y' i6 z8 } Server: bfe/1.0.8.18

" \6 f7 B+ l5 t, l* ~- ^2 U

五、用Chrome查看响应1、打开 Network2、输入网址3、选中第一个响应4、查看 Response Headers,点击「view source」5、你会看到响应的前两部分6、查看 Response 或者 Preview,你会看到响应的第 4 部分

6 E0 H _$ g) k

六、如何使用curl命令1、GET请求访问百度的命令:curl -s -v -- "https://www.baidu.com"2、如果要获取网页时使用额外的标题,可以输入命令:url -s -v -H "Lambert: xxx" -- "https://www.baidu.com"

! ^- c7 h2 T& ]- f: A

3、POST请求使用额外标题访问QQ的命令:curl -X POST -s -v -H "Lambert: xxx" -- "https://www.qq.com"4、POST请求访问并指定数据发送HTTP服务器命令:

/ m. I6 A& H9 E' Z" \5 X y

curl -X POST -d "111111111" -s -v -H "Lambert: xxx" -- "https://www.qq.com"5、下载一个页面的内容curl 网址>本地文件夹路径

4 P% S, O" k1 T2 s/ | 7 Y' @6 J b3 i; Y4 C - M' O! N( i& v6 p+ b- p& B: g3 D& n4 |% ` $ R, w- C0 U% \+ }% w1 J& k

暂时无法加载帖子列表

回复

使用道具 举报

山核桃5元 发表于 2026-04-04 08:24:57 | 显示全部楼层
楼主辛苦了,整理这么多内容,必须点赞收藏
回复

使用道具 举报

匪兵头 发表于 2026-08-30 13:24:42 | 显示全部楼层
内容很干货,没有多余的废话,值得反复看
回复

使用道具 举报

我来也 发表于 2026-09-06 21:32:22 | 显示全部楼层
这个分享太实用了,刚好能用到,感谢楼主!
回复

使用道具 举报

    您需要登录后才可以回帖 登录 | 加入怎通

    本版积分规则

    QQ|手机版|小黑屋|网站地图|真牛社区 ( 苏ICP备2023040716号-2 )

    GMT+8, 2026-9-13 04:40 , Processed in 0.038075 second(s), 25 queries , Gzip On.

    免责声明:本站信息来自互联网,本站不对其内容真实性负责,如有侵权等情况请联系420897364#qq.com(把#换成@)删除。

    Powered by Discuz! X3.5

    快速回复 返回顶部 返回列表