3、http协议(了解) (1)什么是http(超文本传输控制协议)协议 由w3c制订的一种网络应用层协议,用来规范 浏览器与web服务器之间通信的过程及数据格式。 1)通信的过程: step1,浏览器建立与web服务器之间的连接。 step2,浏览器将请求数据打包并发送给web服务器。 step3,服务器将响应数据打包并发送给浏览器。 step4,服务器关闭连接。 如果浏览器要再发请求,必须重新建立一个新的连接。 2)特点 “一次请求,一次连接”,优点是web服务器可以 利用有效的连接个数为尽可能多的客户端(浏览器)服务。 (2)数据包的结构 1)请求数据包 a,请求行:请求方式(get/post) 请求资源路径协议的类型和版本 b,消息头: 是一些key,value对,由w3c定义,可以由通信的双方彼此发送,比如,浏览器 可以发送一个"user-agent"消息头给服务器,告诉服务器,浏览器的类型和版本。 c,实体内容: 只有发送post请求时,实体内容才会有数据(即请求参数)。如果发送的是get请求, 请求参数会添加到请求资源路径的后面。 2)响应数据包 a,状态行: 协议类型和版本 状态码 状态描述 状态码:是一个三位数字,由w3c定义的,表 示服务器处理请求的一种状态。 200:正常 500:系统异常 404:依据请求资源路径找不到对应的资源 b,消息头: 服务器也可以发送一些消息头给浏览器,比如"content-type",告诉浏览器,服务器返回 的数据类型和编码。 c,实体内容: 程序处理的结果 4、get请求与post请求 (1)哪一些情况下,浏览器会发送get请求? a,直接在浏览器地址栏输入某个地址。 b,点击链接 c,表单默认的提交方式 (2)哪一些情况下,浏览器会发送post请求? a,设置表单method="post"。 (3)get请求的特点 a,请求参数会添加到请求资源路径的后面,只能添加 少量的参数(因为请求行只有一行,大约只能存放2K 左右的数据)。 b,请求参数会显示在浏览器地址栏)路由器会记录 请求地址)。 (4)post请求的特点 a,请求参数添加到实体内容里面,可以添加大量的参数。 b,相对安全,但是,post请求不会对请求参数进行 加密处理(可以使用https协议来保证数据安全)。 |
|