|
2 p' W" s0 m% n; }& d HTTP 请求包括哪些部分:1:
# {# P6 p( n' m# a& l$ O$ _; G POST / HTTP/1.1 这是第一部分主要包括: 动词 路径 协议/版本
: m1 Z+ L8 P8 m4 s+ L; W 2:' I# Q% k9 w7 ^' F3 K
Key1: value1
, P" F4 Y( e- k6 | y Key2: value2
7 i# H5 \1 `7 o: b Key3: value3+ k. D' d0 K9 F- n4 e
Content-Type: application/x-www-form-urlencoded
/ a3 J# m& x4 F Host: www.baidu.com1 F- ?7 g3 i0 c4 z
User-Agent: curl/7.54.0 这些都是第二部分. ?5 z% H% s4 y8 e
7 a: U/ o7 B5 e1 Z7 C z
3:; n$ B# j& J- a8 c, D# X. x( r
这就是第三部分 回车 主要用来分开第二和第四部分
0 X$ q! t, b$ R/ G& `) g) { 4:
% E4 Q6 u& c8 G/ d" J9 z 要上传的数据 这是第四部分 主要就是要上传的数据
2 n- T) v/ I! y* o- m ^ HTTP 响应包括哪些部分:1:
/ {, e; [& J4 A HTTP/1.1 302 Found 这是第一部分主要包括: 协议/版本号状态码状态解释2 Q9 T: p! C2 M8 O0 B
2:+ d% c/ w# r! m: o5 ?5 d
Key1: value1 f- C4 Q" @$ t$ ` M1 S. M5 l' E- }8 p
Key2: value2$ H: d* G& u/ u+ O
Content-Length: 17931: N* W$ h, t7 D
Content-Type: text/html 这些都是第二部分; f" R; X6 A9 {+ `3 Q5 d
3:+ n, \- s- e9 W& [* ~$ A" F
这就是第三部分 回车 主要用来分开第二和第四部分
- t9 V: H0 v I9 v- T1 V# \ 4:要下载的内容 这是第四部分 要下载的内容 . s( y2 O9 J/ ^
如何用浏览器查看HTTP 请求/响应 内容:请求:& A& D- D: H% W$ w; H
打开命令行- B4 a# X. A6 ]4 V
打开 Network4 Y1 j+ K; ~3 t3 F% Z6 c r" N
地址栏输入网址# `' U. R, }: s. K# n1 w7 J
在 Network 点击,查看 request,! f) q, E- y5 ]
点击「view source」. m/ s8 V5 L) q5 x) V7 w
如果有请求的第四部分,那么在 FormData 或 Payload 里面可以看到 这就是查看HTTP请求的方式了# L: ~: l- q' ^" A R* \( K& P
响应:
" Q# m9 ~- u# s8 R 打开命令行; Q% y3 s% n% P) A6 V! n
打开 Network
% |9 q& {- E1 x, u$ t3 B( V& [) ? 输入网址8 o5 L( c$ f6 O6 V3 Y5 ^
选中第一个响应
/ Q) n. g3 q8 ~0 m' ]! f 查看 Response Headers,点击「view source」9 u$ p. e& \! @4 |- v% j
你会看到响应的前两部分" M5 G6 [& A5 e8 _
查看 Response 或者 Preview,你会看到响应的第 4 部分 这就是查看HTTP响应的方式了 0 N+ ^. Q: ]! K' E8 ~* W
curl 命令的使用:curl -s -v -- "https://www.baidu.com" 以这段为例子% j2 g6 L3 r k! |1 H. b
只要在命令行输入上面这段命令 就会出现 HTTP 请求的部分了) ?/ O' I7 |9 g: }
其实 -- "https://www.baidu.com" 表示你要访问的网址
1 F* D! Q- O6 |9 N) l7 G0 T 而且如果在代码中加入 -x POST 还能将 GET 请求方式改成 POST
, d3 Q. K7 v0 x$ V -X/--request 指定什么命令
# v, o$ [& f9 T8 n, p3 ?% K -d/--data HTTP POST方式传送数据
& u: J. @3 |9 Z! n6 s -s/--silent 静默模式。
4 d* G% Y$ h" D# ^/ a" r X 不输出任何东西
% f. v3 H) O9 c6 D u2 \ -v/--verbose 显示请求和响应(不加该参数只显示响应)
5 ~3 u/ G! @" Y6 v; f3 A+ w+ L -H/--header 自定义头信息传递给服务器
3 I ]9 h8 _0 i$ y0 B4 U
6 u/ d# [8 S" z
$ S5 @0 a' C2 m0 y) F; C9 O& _9 d3 {4 G9 i( G( m v2 S
* E, G$ X! d9 a, h0 D9 s' t1 A- D |