HTTP协议主要有用于做客户端浏览器和Web服务器之间的一个通讯规则(TCP/IP)。该协议主要规定的是传输HTML(超文本)的格式,其中包含了很多的消息头信息,可以帮助底层的Socket进行识别具体的信息,那么对于开发者而言,如果掌握了HTTP协议的基本通信规则有利于后期的JavaEE开发。
默认的浏览器是无法进行协议的通信内容查看的,因此我们浏览器上需要安装一个额外的插件:HTTP Watch。
HTTP协议有1.0和1.1版本:
HTTP1.0的协议主要用于对每一次请求建立新的连接。这样会导致连接的次数过于频繁,导致速度降低。
HTTP1.1可以使得客户端建立一定时间范围内的持续连接。
请求分析
浏览器在发送请求的时候,会默认给请求进行封装,给一个请求上面添加HTTP协议相关的头信息。常见的信息如下:
请求行:
GET /books/java.html HTTP/1.1
请求方式 请求的资源 请求使用的协议和版本
请求方式:HTML表单、GET和POST
GET请求方式最大的特点是会将参数绑定在URL地址栏的后面进行传递,因此传递的数据是有限的且是明文的。
POST请求方式,该方式会将参数指定在请求体中进行传递。
常见的请求头分析:浏览器生成出来的信息,该信息想要通知服务器一些信息。
响应分析
浏览器给服务器发送了一个消息,那么服务器一定会给浏览器返回一个响应消息。
HTTP/1.1 200 OK -> 响应行
响应的协议版本 响应的状态码 对响应码的具体描述
常见的响应码:
200 响应成功
302 继续细化您的请求
404 请求资源无法找到
500 服务器错误