009-HTTP_01

Posted hhj-study-10years

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了009-HTTP_01相关的知识,希望对你有一定的参考价值。

请求头 : (下面 10 行都是请求头)
    GET /index.html HTTP/1.1                  这两行比较重要
    GET /classic.css HTTP/1.1
    Host: 127.0.0.1:8997
    Connection: keep-alive
    User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36
    Accept: text/css,*/*;q=0.1
    Referer: http://127.0.0.1:8997/
    Accept-Encoding: gzip, deflate, br
    Accept-Language: zh-CN,zh;q=0.9
    
每次显示一个新的网页时,浏览器一般会向服务器端发送多次请求(头)
如果要显示的网页已经在缓存中,那么浏览器会发送一个空的请求头(没有请求头,代码中要捕获该异常),表示浏览器不希望服务器返回数据。
如果只输入域名 : 127.0.0.1:7788,那么请求头 = GET / HTTP/1.1

响应头 = "HTTP/1.1 200 OK \r\n"
响应头 += "HTTP/1.1 404 NOT FOUND \r\n"
响应头 += "content-type:text/html;charset=utf-8 \r\n"
……
\r\n
响应体 = 在浏览器中显示的内容(HTML、CSS、JS……)

响应内容 = 响应头 + "\r\n" + 响应体
(当遇到连续两个 \r\n 时,Header 部分结束,后面的数据全部是 Body)

 

以上是关于009-HTTP_01的主要内容,如果未能解决你的问题,请参考以下文章

这些角度电子邮件指令代码片段如何连接

为啥 GraphQL 片段在查询中需要 __typename?

这些 C++ 代码片段有啥作用?

[AndroidStudio]_[初级]_[配置自动完成的代码片段]

VSCode 配置 用户自定义代码片段 自定义自动代码补充

[AndroidStudio]_[初级]_[配置自动完成的代码片段]