HTTP的初探-0基础web前端入门(二)

207 阅读2分钟

HTTP 请求包括哪些部分

  1. GET请求内容

    GET / HTTP/1.1
    Host: www.baidu.com
    User-Agent: curl/7.54.0
    Accept: */*

  1. 内容解析

    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
    3 
    4 要上传的数据

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

如何用用 Chrome 查看请求内容

  1. 用 F12 打开控制台 然后点击Network

  2. 找到有请求内容的请求连接 然后 点击Request Header 右边的 view paresd

3.地址栏输入网址,以 baidu.com 为例 4.点击Network,查看request,点击view source

5.这样我们就可以看到请求的前三部分了,如图所示就是GET请求的实例,我们可以对照着前面给出的标准再次理解一下。

HTTP 响应包括哪些部分

  1. GET响应内容
    HTTP/1.1 302 Found
    Connection: Keep-Alive
    Content-Length: 17931
    Content-Type: text/html
    Date: Tue, 10 Oct 2017 09:19:47 GMT
    Etag: "54d9749e-460b"
    Server: bfe/1.0.8.18
    
    <html>
    <head>
    <meta http-equiv="content-type" content="text/html;charset=utf-8"> 后面太长,省略了……

  1. 内容解析

    1 协议/版本号状态码状态解释
    2 Key1: value1
    2 Key2: value2
    2 Content-Length: 17931 (下载内容长度)
    2 Content-Type: text/html (下载内容格式)
    3
    4 要下载的内容

  1. 状态码记忆

    1. 1xx 不常用
    2. 2xx 表示成功
    3. 3xx 表示网址移动到了别的地方
    4. 4xx 表示浏览器(前端)发出的请求错误
    5. 5xx 表示服务器(后台)错误
  2. 注意要点

    1. 状态解释没什么用
    2. 第 2 部分中的 Content-Type 标注了第 4 部分的格式
    3. 第 2 部分中的 Content-Type 遵循 MIME 规范

如何用用 Chrome 查看响应内容

  1. 鼠标左键点击检查,打开 Network
  2. 输入网址
  3. 选中第一个响应 (Response Header) 有内容的即可
  4. 点击view source
  5. 然后我们就能看到第四部分了

使用 curl 命令

  1. curl -s -v -H "Frank: xxx" -- "www.baidu.com"
  2. 输入: curl -s -v -H "Frank: xxx" -- "www.baidu.com"然后回车会产生一大堆代码。

*后面的不要看

后面的是请求内容

<后面的是相应内容