Servlet之HTTP协议

前言

了解关于javaWeb的HTTP协议,更好的理解客户端和服务端的通信。

一、HTTP协议

1、什么是HTTP协议

协议就是规则,遵守规则才能高效协作完成通信。
HTTP协议就是客户端和服务端通信时所发数据要遵守什么样的规则,这里的通信即客户端的请求和服务端的响应。

2、请求

A.GET

1)请求行

请求类型GET
请求的资源/资源路径[?请求参数名=请求参数值&请求参数名2=请求参数值2…]
需遵守的协议HTTP/1.1

GET /book/ HTTP/1.1
Host: localhost:8080
Connection: keep-alive
Cache-Control: max-age=0
sec-ch-ua: “Microsoft Edge”;v=“95”, “Chromium”;v=“95”, “;Not A Brand”;v=“99”
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: “Windows”
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36 Edg/95.0.1020.44
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.9
Sec-Fetch-Site: none
Sec-Fetch-Mode: navigate
Sec-Fetch-User: ?1
Sec-Fetch-Dest: document
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Cookie: JSESSIONID=F67CC0FF7B6F365863728429F9F9C881
2)请求头
以Key,Value的形式存在,给服务端告知一些必要的信息。

Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,/;q=0.8
客户端告诉服务端可接收响应体内容的类型。
Accept-Encoding:gzip, deflate, sdch
客户端告诉服务端接收数据的压缩格式
Accept-Language:zh-CN,zh;q=0.8
客户端告诉服务端接收数据的语言类型,zh-CN中文,en-US英文。
Connection:keep-alive
客户端告诉服务端接回我之后不要马上关闭,保存一段时间的连接。
Host:localhost:8080
定位服务端的IP和定位web容器的端口。
Upgrade-Insecure-Requests:1
User-Agent:Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36
请求由浏览器带发,所以浏览器为代理。

B.POST

1)请求行

请求类型POST
请求的资源/资源路径
需遵守的协议HTTP/1.1

2)请求头
以Key,Value的形式存在,给服务端告知一些必要的信息。
3)请求体
一般为发送给服务器的表单数据。
在这里插入图片描述
在这里插入图片描述

3、常见请求分类

A.Get请求

1)form标签+method=“get”
2)a标签
3)引入css,js,img以及iframe引入HTML
4)浏览器输入地址敲回车

B.Post请求

1)form标签+method=“post”

4、响应的HTTP协议格式

1)响应行,协议+状态码+状态码解释
2)响应头,必要信息
3)响应体,一般情况下是传回的HTML
在这里插入图片描述

A.常用响应码说明

1)200,请求响应成功。
2)302,重定向到其它请求路径,不同的请求有不同的信息和域。
3)404,请求成功,请求的资源不存在。
4)500,请求成功,服务器内部报错。

B.MIME类型说明

HTTP中数据类型的规范,格式为大类型/小类型,如text/html,表示为html的文本;img/gif,表示为gif的图片文件。
常见MIME类型
在这里插入图片描述

总结

1)HTTP协议
2)GET、POST详解

参考文献

[1] JavaWeb 尚硅谷
[2] HTTP 报文结构

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值