Http协议()

http协议

响应协议报文

/**
 * http响应协议的具体格式
 *
 * HTTP/1.1 200   ok                               状态行
 * Content-Type: text/html;charset=ISO-8859-1      响应头
 * Content-Length: 12
 * Date: Tue, 15 Nov 2022 00:37:19 GMT
 * Keep-Alive: timeout=20
 * Connection: keep-alive
 *                                                 空白行
 * getServlet                                      响应体

响应协议的组成部分

  • 状态行,三部分组成

    第一部分:HTTP/1.1 协议版本号
    第二部分:状态码(http协议中规定的响应状态号,不同的状态号对应不同的响应内容)

    常见: 200表示响应成功,正常
    404访问资源不存在,访问路径写错了,要么就是服务器对于资源未启动
    405表示前端发送请求的方式与后端处理请求的方式不同(如post请求,用get请求处理。。)
    500一般是服务器端的程序错误

    第三部分 状态的描述信息

    如: ok表示正常
    not found资源找不到

  • 第一部分:HTTP/1.1 协议版本号
  • 第二部分:状态码(http协议中规定的响应状态号,不同的状态号对应不同的响应内容)

    常见: 200表示响应成功,正常
    404访问资源不存在,访问路径写错了,要么就是服务器对于资源未启动
    405表示前端发送请求的方式与后端处理请求的方式不同(如post请求,用get请求处理。。)
    500一般是服务器端的程序错误

  • 常见: 200表示响应成功,正常
  • 404访问资源不存在,访问路径写错了,要么就是服务器对于资源未启动
  • 405表示前端发送请求的方式与后端处理请求的方式不同(如post请求,用get请求处理。。)
  • 500一般是服务器端的程序错误
  • 第三部分 状态的描述信息

    如: ok表示正常
    not found资源找不到

  • 如: ok表示正常
  • not found资源找不到
  • 响应头

    描述响应的内容类型,响应的内容长度,响应的时间。。。。。

  • 描述响应的内容类型,响应的内容长度,响应的时间。。。。。
  • 空白行

    分隔响应头和响应体

  • 分隔响应头和响应体
  • 响应体

    响应体就是响应的正文,是一个长字符串,这个字符串由浏览器渲染,解释并执行

  • 响应体就是响应的正文,是一个长字符串,这个字符串由浏览器渲染,解释并执行

get请求报文

GET /servlet05/getServlet?username=12312&password=21321321 HTTP/1.1		请求行
Host: localhost:8080													请求头
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:106.0) Gecko/20100101 Firefox/106.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Referer: http://localhost:8080/servlet05/
Connection: keep-alive
Cookie: Idea-edf53cfb=3fbed5fe-3e57-49ee-8778-103837ec2a17
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: same-origin
																		 空白行
																		 请求体

post请求报文

POST /servlet05/postServlet HTTP/1.1									请求行
Host: localhost:8080													请求头
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:106.0) Gecko/20100101 Firefox/106.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Content-Type: application/x-www-form-urlencoded
Content-Length: 33
Origin: http://localhost:8080
Connection: keep-alive
Referer: http://localhost:8080/servlet05/
Cookie: Idea-edf53cfb=3fbed5fe-3e57-49ee-8778-103837ec2a17
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: same-origin
Sec-Fetch-User: ?1
																		空白行
username	"213"														请求体
password	"2313"

请求协议的组成

  • 请求行

    包括三部分

    1.请求方式

    常用:get/post
    delete/put/head/options/trace

    2.URI

    URI和URL什么关系?有什么区别?
    URI是什么?统一资源标识符,代表网络中某个资源的名字,但是通过URI无法定位资源
    URL是什么?统一资源定位符,代表网络中某个资源,通过URL可以定位到该资源

    URL包括URI
    http://localhost:8080:/servlet05/index.html 这是URL
    /servlet05/index.html 这是URI

    3.http协议版本号

  • 包括三部分

    1.请求方式

    常用:get/post
    delete/put/head/options/trace

    2.URI

    URI和URL什么关系?有什么区别?
    URI是什么?统一资源标识符,代表网络中某个资源的名字,但是通过URI无法定位资源
    URL是什么?统一资源定位符,代表网络中某个资源,通过URL可以定位到该资源

    URL包括URI
    http://localhost:8080:/servlet05/index.html 这是URL
    /servlet05/index.html 这是URI

    3.http协议版本号

  • 1.请求方式

    常用:get/post
    delete/put/head/options/trace

  • 常用:get/post
  • delete/put/head/options/trace
  • 2.URI

    URI和URL什么关系?有什么区别?
    URI是什么?统一资源标识符,代表网络中某个资源的名字,但是通过URI无法定位资源
    URL是什么?统一资源定位符,代表网络中某个资源,通过URL可以定位到该资源

    URL包括URI
    http://localhost:8080:/servlet05/index.html 这是URL
    /servlet05/index.html 这是URI

  • URI和URL什么关系?有什么区别?
  • URI是什么?统一资源标识符,代表网络中某个资源的名字,但是通过URI无法定位资源
  • URL是什么?统一资源定位符,代表网络中某个资源,通过URL可以定位到该资源

    URL包括URI
    http://localhost:8080:/servlet05/index.html 这是URL
    /servlet05/index.html 这是URI

  • URL包括URI
  • http://localhost:8080:/servlet05/index.html 这是URL
  • /servlet05/index.html 这是URI
  • 3.http协议版本号
  • 请求头

    请求的主机
    主机端口号
    浏览器信息
    平台信息
    cookie信息
    ……………………….

  • 请求的主机
  • 主机端口号
  • 浏览器信息
  • 平台信息
  • cookie信息
  • ……………………….
  • 空白行

    用于区分请求头和请求体

  • 用于区分请求头和请求体
  • 请求体

    向服务器发送的具体数据

  • 向服务器发送的具体数据
————————

http协议

响应协议报文

/**
 * http响应协议的具体格式
 *
 * HTTP/1.1 200   ok                               状态行
 * Content-Type: text/html;charset=ISO-8859-1      响应头
 * Content-Length: 12
 * Date: Tue, 15 Nov 2022 00:37:19 GMT
 * Keep-Alive: timeout=20
 * Connection: keep-alive
 *                                                 空白行
 * getServlet                                      响应体

响应协议的组成部分

  • 状态行,三部分组成

    第一部分:HTTP/1.1 协议版本号
    第二部分:状态码(http协议中规定的响应状态号,不同的状态号对应不同的响应内容)

    常见: 200表示响应成功,正常
    404访问资源不存在,访问路径写错了,要么就是服务器对于资源未启动
    405表示前端发送请求的方式与后端处理请求的方式不同(如post请求,用get请求处理。。)
    500一般是服务器端的程序错误

    第三部分 状态的描述信息

    如: ok表示正常
    not found资源找不到

  • 第一部分:HTTP/1.1 协议版本号
  • 第二部分:状态码(http协议中规定的响应状态号,不同的状态号对应不同的响应内容)

    常见: 200表示响应成功,正常
    404访问资源不存在,访问路径写错了,要么就是服务器对于资源未启动
    405表示前端发送请求的方式与后端处理请求的方式不同(如post请求,用get请求处理。。)
    500一般是服务器端的程序错误

  • 常见: 200表示响应成功,正常
  • 404访问资源不存在,访问路径写错了,要么就是服务器对于资源未启动
  • 405表示前端发送请求的方式与后端处理请求的方式不同(如post请求,用get请求处理。。)
  • 500一般是服务器端的程序错误
  • 第三部分 状态的描述信息

    如: ok表示正常
    not found资源找不到

  • 如: ok表示正常
  • not found资源找不到
  • 响应头

    描述响应的内容类型,响应的内容长度,响应的时间。。。。。

  • 描述响应的内容类型,响应的内容长度,响应的时间。。。。。
  • 空白行

    分隔响应头和响应体

  • 分隔响应头和响应体
  • 响应体

    响应体就是响应的正文,是一个长字符串,这个字符串由浏览器渲染,解释并执行

  • 响应体就是响应的正文,是一个长字符串,这个字符串由浏览器渲染,解释并执行

get请求报文

GET /servlet05/getServlet?username=12312&password=21321321 HTTP/1.1		请求行
Host: localhost:8080													请求头
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:106.0) Gecko/20100101 Firefox/106.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Referer: http://localhost:8080/servlet05/
Connection: keep-alive
Cookie: Idea-edf53cfb=3fbed5fe-3e57-49ee-8778-103837ec2a17
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: same-origin
																		 空白行
																		 请求体

post请求报文

POST /servlet05/postServlet HTTP/1.1									请求行
Host: localhost:8080													请求头
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:106.0) Gecko/20100101 Firefox/106.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Content-Type: application/x-www-form-urlencoded
Content-Length: 33
Origin: http://localhost:8080
Connection: keep-alive
Referer: http://localhost:8080/servlet05/
Cookie: Idea-edf53cfb=3fbed5fe-3e57-49ee-8778-103837ec2a17
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: same-origin
Sec-Fetch-User: ?1
																		空白行
username	"213"														请求体
password	"2313"

请求协议的组成

  • 请求行

    包括三部分

    1.请求方式

    常用:get/post
    delete/put/head/options/trace

    2.URI

    URI和URL什么关系?有什么区别?
    URI是什么?统一资源标识符,代表网络中某个资源的名字,但是通过URI无法定位资源
    URL是什么?统一资源定位符,代表网络中某个资源,通过URL可以定位到该资源

    URL包括URI
    http://localhost:8080:/servlet05/index.html 这是URL
    /servlet05/index.html 这是URI

    3.http协议版本号

  • 包括三部分

    1.请求方式

    常用:get/post
    delete/put/head/options/trace

    2.URI

    URI和URL什么关系?有什么区别?
    URI是什么?统一资源标识符,代表网络中某个资源的名字,但是通过URI无法定位资源
    URL是什么?统一资源定位符,代表网络中某个资源,通过URL可以定位到该资源

    URL包括URI
    http://localhost:8080:/servlet05/index.html 这是URL
    /servlet05/index.html 这是URI

    3.http协议版本号

  • 1.请求方式

    常用:get/post
    delete/put/head/options/trace

  • 常用:get/post
  • delete/put/head/options/trace
  • 2.URI

    URI和URL什么关系?有什么区别?
    URI是什么?统一资源标识符,代表网络中某个资源的名字,但是通过URI无法定位资源
    URL是什么?统一资源定位符,代表网络中某个资源,通过URL可以定位到该资源

    URL包括URI
    http://localhost:8080:/servlet05/index.html 这是URL
    /servlet05/index.html 这是URI

  • URI和URL什么关系?有什么区别?
  • URI是什么?统一资源标识符,代表网络中某个资源的名字,但是通过URI无法定位资源
  • URL是什么?统一资源定位符,代表网络中某个资源,通过URL可以定位到该资源

    URL包括URI
    http://localhost:8080:/servlet05/index.html 这是URL
    /servlet05/index.html 这是URI

  • URL包括URI
  • http://localhost:8080:/servlet05/index.html 这是URL
  • /servlet05/index.html 这是URI
  • 3.http协议版本号
  • 请求头

    请求的主机
    主机端口号
    浏览器信息
    平台信息
    cookie信息
    ……………………….

  • 请求的主机
  • 主机端口号
  • 浏览器信息
  • 平台信息
  • cookie信息
  • ……………………….
  • 空白行

    用于区分请求头和请求体

  • 用于区分请求头和请求体
  • 请求体

    向服务器发送的具体数据

  • 向服务器发送的具体数据