HTTP简单认识

1、HTTP的请求和响应

HTTP的请求和响应都包含4个部分,在命令行输入
curl -v www.baidu.com
发出以下请求

> GET / HTTP/1.1
> Host: www.baidu.com
> User-Agent: curl/7.60.0
> Accept: */*
>
  1. 第一部分为:动词+路径+协议/版本(第一行)
  2. 第二部分每行格式:key1: value1
    上面引用代码中 'Host'; 'User-Agent'; 'Accept'都是key,冒号后面的为value
  3. 第三部分为:回车("\n",就是空着无内容的一行,用以分隔第二和第四部分,见上面代码第5行)
  4. 第四部分为:要上传的数据(也可以没有,上面代码中也未显示)

响应如下

< HTTP/1.1 200 OK
< Accept-Ranges: bytes
< Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
< Connection: Keep-Alive
< Content-Length: 2381
< Content-Type: text/html
< Date: Mon, 16 Jul 2018 00:48:49 GMT
< Etag: "58860504-94d"
< Last-Modified: Mon, 23 Jan 2017 13:28:36 GMT
< Pragma: no-cache
< Server: bfe/1.0.8.18
< Set-Cookie: BDORZ=27315; max-age=86400; domain=.baidu.com; path=/
<
{ [1040 bytes data]
100  2381  100  2381    0     0  38403      0 --:--:-- --:--:-- --:--:-- 38403
 百度一下,你就知道  

关于百度 About Baidu

©2017 Baidu 使用百度前必读  意见反馈 京ICP证030173号 

响应与请求类似,但是第一部分格式不同,
响应第一部分格式为:协议/版本号 状态码 状态解释
第四部分为需要下载的内容(见最后一行)


2、如何用Chrome开发者工具查看 HTTP 请求内容

  1. 打开Chrome
  2. 按F12,打开network
  3. 在导航栏输入网址
  4. Name下点击网址,在傍边的Headers可以看到Response Headers以及Request Headers,分别为响应和请求。

查看请求部分,如下图流程


image
  1. 点击Request Headers,再点击view source这步很重要,一定要点击view source,如下图
    image
  2. 然后会看到请求第一部分和第二部分的内容


    image
  3. 第四部分可以点击preview或者response看到。

查看响应部分与请求类似,点击Response Headers。


3、如何使用 curl 命令

curl是利用URL语法在命令行方式下工作的开源文件传输工具。
语法为:
curl [option] [url]

输入以下指令向百度网站发出请求,百度网站同时返回响应。
curl -v -s www.baidu.com
curl默认动词为GET,-s参数不会报错和显示进度; -v参数可以显示一次 http 通信的整个过程
输入 -x 可以支持其他动词。

你可能感兴趣的:(HTTP简单认识)