javaweb学习总结十九(http协议概述以及http请求信息分析)

时间:2024-03-22 23:37:08

一:http协议概述

1:http协议定义

javaweb学习总结十九(http协议概述以及http请求信息分析)

2:使用telnet程序连接web服务器,获取资源

javaweb学习总结十九(http协议概述以及http请求信息分析)

javaweb学习总结十九(http协议概述以及http请求信息分析)

3:http协议:超文本传输协议,它是基于tcp/ip协议,就是建立在tcp/ip之上工作的,

http协议前提是必须浏览器与服务器建立连接。

javaweb学习总结十九(http协议概述以及http请求信息分析)

4:http/1.0与http/1.1的区别

javaweb学习总结十九(http协议概述以及http请求信息分析)

telnet连接tomcat服务器演示:

http1.0协议:

javaweb学习总结十九(http协议概述以及http请求信息分析)

只与服务器交互了1次,然后就端口连接。

http1.1协议:

javaweb学习总结十九(http协议概述以及http请求信息分析)

5:浏览器请求服务器端次数问题

一个浏览器访问服务器,首先拿到html页面,然后发现有图片img、js、css等文件时,

会再次发送请求服务器,获取这些资源,所以web网站性能优化应该考虑到这些问题,尽量避免

客户端过多的访问服务器,减轻服务器的负荷。

二:http协议请求信息分析

1:http请求的组成部分

javaweb学习总结十九(http协议概述以及http请求信息分析)

请求行:包括请求方式、请求资源名称、 协议版本号

请求头:请求那台主机以及客户端环境的一些信息

空行:

请求数据:如果请求方式是post,在空行下面会显示请求数据,如果是get请求,请求数据会

显示在请求url地址的后面,url?username="Tom"&password="1234"

2:请求行信息

现在用的比较多的是post和get方式,一般情况下,如果不说明请求方式,例如地址栏输入网址请求、

超链接请求等都是get请求,只有在form表单请求时可以设置method方式为post。

get请求方式请求数据显示在url后面,post方式显示在请求体中,空白行下面。

get方式请求数据有限制,最大为1k,而post方式理论上没有限制。

get方式显示请求数据在地址栏,post方式不显示,所以post方式相对安全。

javaweb学习总结十九(http协议概述以及http请求信息分析)

3:请求头信息

javaweb学习总结十九(http协议概述以及http请求信息分析)

HTTP请求头中含义:

Accept:text/html,image/* :告诉服务器,浏览器可以接受的文件格式

Accept-Charset:iso-8859-1:告诉服务器,浏览器的编码方式

Accept-Encoding:gzip,compress:告诉服务器,浏览器的压缩方式

Accept-Language:en-us,zh-cn:告诉服务器,浏览器语言环境

Host:告诉服务器,浏览器请求主机地址

If-Modified-Since:告诉服务器,浏览器缓存时间,服务器拿这个时间和资源更新时间比较,如果资源更新时间是最近,那么

把服务器数据给浏览器,如果是一样的,那么直接使用缓存数据。

User-Agent:告诉服务器,浏览器的客户机环境

cookie:发送请求到服务器携带的数据

Connection:close/Keep-alive:发送请求后,是断开连接还是保持连接