当前位置: 移动技术网 > 网络运营>网络>协议 > 关于http协议的深入学习

关于http协议的深入学习

2018年11月03日  | 移动技术网网络运营  | 我要评论

乌鲁木齐生活网,中国将军名单,boie-013

1、http协议:(要求不高需要了解)

(1)什么是http协议

是由w3c制定的一种网络应用层协议,规定了与web

服务之间如何通信以及相应的数据包格式

1)如何通信:

1、建立连接

2、发送请求

3、发送响应

4、关闭链接

2)特点

一次请求,一次链接 (有点:高效)

即如果浏览器需要发送cinder请求,就需要建立新的链接

这样设计,有点事,服务器可以利用有限的链接尽可能多的

请求服务

(2)数据包的结构

1、请求数据包

请求行(请求方式 请求资源路径 协议类型和版本)

消息头

是一些键值对(使用:隔开)表示特定的含义,

比如,浏览器可以发送“user-agent”消息,

告诉服务器,浏览器的类型和版本。

实体内容

只有当请求方式为post时,实体类人内容里面才会有数

据(请求参数)

2、响应数据包

状态行(状态类型和版本 状态码 转台描述)

消息头

服务器也可以发送一些消息给浏览器,比如,发送

“content-type”消息头,告诉浏览器,服务器返回

的数据类型。

实体内容

程序的处理结果,浏览器回揭西其中的额数据,生成

相应的页面

(3)两种请求方式

1)get 请求

a、那些情况下,浏览器会发送get请求

a1直接输入某个地址

a2点击链接

a3表单默认提交方式

b、特点

b1.会将请求参数添加到请求资源路径的后面只能

提交少量的数据

b2.会将请求参数显示到浏览器的地址栏,不安全

注:比如会记录包含了请求参数的请求

地址

2)post请求

a。那些情况下浏览器会发送post请求

设置表单method=“post”

b.特点

1、会将请求参数添加到实体内容里面,可以提交

大量的数据

2、不会讲请求参数显示在浏览器地址栏,相对安

注:不会将请求参数

2、servlet输出中文

1)为什么会出现乱码

out.println方法在默认的情况下,会使用iso-8859-1来编码

2)如何解决

response.setcontenttype("text/html;charset=utf-8");

3、表单包含会有中文参数值

1、为什么会有乱码

表单提交时,浏览器会对表单中的中文参数进行编码

注:

会按照打开表单所在的页面时的字符集来编码

服务器端默认情况下,还使用“iso-8859-1”来编码

2、如何解决

1、在静态页面加 保证变淡提交时按照指定的字符集来编码

 

注:只针对post请求有效(推荐使用此方法)

方法2.

name=new string

(name.getbytes("iso-8859-1"),"utf-8");

注:先还原得到浏览器发送过来的字节数组,

然后使用正确的字符集来解码。

4、怎么读取请求参数值

1、string request.parameter(string paramname)

注:

a,paramname必须与实际发送过来的参数名一致,

如果不一致,会获得nul

b,有可能获得空字符串

2、sting[] request.getparametervalues(string paramname)

注:

a,当有多个参数相同时 使用该方法

/hello?mp=1&mp=2&mp=3

b,对于多选和单选框,如果不选择任何选项的话会获得null

5、怎么用jdbc访问

1、需要将jdbc提供的jar文件拷贝到web-inf/lib下

2、使用jdbc提供的一套opi来访问数据库

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网