1、什么是协议?
双方在交互、通讯的时候,遵守的一种规范、规则。
2、http协议
针对网络上的客户端与服务器在执行http请求的时候,遵守的一种规范。其实就是规定了客户端在访问服务器的时候,要带上哪些东西,服务器端返回数据的时候,也要带上什么东西。
3、版本:
1.0:请求数据,服务器返回后,将会断开连接
1.1:请求数据,服务器返回后,连接还会保持着。除非服务器/客户端关掉。有一定的时间限制,如果都空着这个链接,那么后面会自己断掉。
4、演示客户端如何与服务器端通讯
>在地址栏中键入网络地址回车,或者是平常注册的时候,点击了注册按钮,浏览器都能显示出来一些东西,那么背地里到底浏览器是怎么通讯的?它们都传输了哪些数据?
1)安装抓包工具HttpWatch(IE插件)
2)打开Tomcat,输入localhost:8080打来首页
3)在首页找到Example字样
4)选择servler例子-------->Request Parameter
接着点击Request Parameters的Execute的超链接
执行tomcat的例子,然后查看浏览器和tomcat服务器的对接细节
>关于抓包工具,也可以使用谷歌浏览器,右键检查可查看。
5、Http请求数据解释
请求头:Post/Get:请求方式,以Post/Get去提交数据
请求行:Accept:客户端向服务器端表示,我能支持什么类型的数据。
Referer:真正请求的地址路径,全路径
Accept-Language:支持的语言格式
User-Agent:用户代理向服务器表明,当前来访的客户端信息
Content-Type:提交的数据类型。经过urlencoding编码的form表单的数据
Accept-Encoding:gzip,deflate:压缩算法
Host:主机地址
Content-Length:数据长度
Connection:Keep-Alive保持连接
Cach-Control:对缓存的操作
请求体:浏览器真正发送给服务器的数据
6、Http相应数据解析
状态码:1xx:信息
2xx:成功,正常处理,得到数据 eg:200
3xx:重定向
4xx:客户端错误 eg:404Not Found 403Forbidden
5xx:服务器端错误 eg:500
Server:服务器是哪一种类型。Tomcat
Content-Type:服务器返回给客户端你的内容类型
Content-Length:返回的数据长度
Date:通讯的日期,响应的时间
7、Get和Post请求的区别
post:1)数据是以流的方式写过去,不会在地址栏上面显示,现在一般提交数据到服务器使用的都是POST
2)以流的方式写数据,所以数据没有大小限制
get:1)会在地址栏后面拼接数据,所以有安全隐患,一般从服务器获取数据,并且客户端也不用提交上面数据的时候,可以使用get
2)能够带的数据有限,1kb大小