0%

HTTP

HTTP协议特点

  • 基于TCP协议,面向连接,安全
  • 基于请求-相应模型的,一次请求对应一次相应
  • HTTP协议是无状态的协议:对于事务处理没有记忆能力。每次请求-相应都是独立的
    • 缺点:多次请求间不能共享数据
    • 优点:速度快

HTTP-请求数据格式

  • 请求数据分为3部分:
    1. 请求行:请求数据的第一行。其中GET表示请求方式,/表示请求资源路径,HTTP/1.1表示协议版本
    2. 请求头:第二行开始,格式为key : value形式
    3. 请求体:POST请求的最后一部分,存放请求参数
1
2
3
4
5
GET / HTTP/1.1
Host: www.itcast.cn
Connection: keep-alive
Cache-Control: max-age=0 Upgrade-Insecure-Requests:1
User-Agent: Mozilla/5.0 Chrome/91.0.4472.106
  • 常见HTTP请求头:
    • Host:表示请求的主机名
    • User-Agent:浏览器版本,例如Chrome浏览器的标识类似Mozilla/5.0 … Chrome/79
    • Accept:标识浏览器能接收的资源类型
    • Accept-Language:表示浏览器偏好的语言
    • Accept——Encoding:表示浏览器可以支持的压缩类型
  • GET请求和POST请求区别
    • GET请求请求参数在请求行中,没有请求体。POST请求请求参数在请求体中
    • GET请求请求参数大小有限制,POST没有

HTTP-相应数据格式

  • 响应数据分为三部分
    1. 相应行:相应数据第一行。200表示状态码,OK表示状态码描述
    2. 响应头:第二行开始,格式为key : value
    3. 响应体
1
2
3
4
5
6
7
8
9
10
11
HTTP/1.1 200 OK
Server: Tengine
Content-Type: text/html
Transfer-Encoding: chunked

<html>
<head>
<title></title>
<head>
<body></body>
</html>
  • 常见的HTTP响应头
    • Content-Type:表示该相应内容的类型
    • Content-Length:表示该相应内容长度
    • Content-Encoding:表示该相应压缩算法
    • Cache-Control:指示客户端应如何缓存

响应状态码大全

状态码分类 说明
1xx 响应中——临时状态码,表示请求已经接受,告诉客户端应该继续请求或者如果它已经完成则忽略
2xx 成功——表示请求已经被成功接收,处理已完成
3xx 重定向——重定向到其它地方,它让客户端再发起一个请求以完成整个处理
4xx 客户端错误——处理发生错误,责任在客户端
5xx 服务器错误——处理发生错误,责任在服务器
------ THEEND ------

欢迎关注我的其它发布渠道