web开发--浏览器发送请求过程解析

web开发--浏览器发送请求过程解析

ID:19626791

大小:34.65 KB

页数:15页

时间:2018-10-03

web开发--浏览器发送请求过程解析_第1页
web开发--浏览器发送请求过程解析_第2页
web开发--浏览器发送请求过程解析_第3页
web开发--浏览器发送请求过程解析_第4页
web开发--浏览器发送请求过程解析_第5页
资源描述:

《web开发--浏览器发送请求过程解析》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、6.1HTTP协议及浏览器编码行为HTTP协议和浏览器是Web国际化的基础,在进入Java服务器端之前,必须先对它们的编码行为有所了解。6.1.1HTTP协议HTTP协议是B/S体系结构应用程序的基础,只有了解了HTTP协议,才能理解如何在B/S体系结构下实现应用程序的国际化。1.HTTP请求当用户在浏览器的地址栏中输入一个URL并按回车键之后,浏览器会向HTTP服务器发送HTTP请求。HTTP请求主要分为“Get”和“Post”两种方法。2.采取“Get”方法的HTTP请求“Get”请求的典型用途是从HTTP服务器获取指定的资源,这样的请求不包含请

2、求体。在浏览器中输入一个URL并按回车键后,浏览器就会生成这种类型的请求。HTTP服务器根据该请求所包含URL中的参数来动态产生响应内容,即“Get”请求的参数是URL的一部分。例如:http://www.baidu.com/s?wd=Chinese上述URL是一个使用百度搜索关键字“Chinese”的URL,参数“wd”包含在URL中,一起发送到HTTP服务器,参数的值是“Chinese”。当参数名和参数值都是ASCII字符时不会出现问题,但当参数名或参数值中包含非ASCII字符时就有可能出现问题。由于URL通过网络传递,因此,为了保证信息的兼容性

3、和通用性,当URL包含非ASCII字符时,必须对其进行转义。如果将上例中的参数值改为“中文”,则URL变为:http://www.baidu.com/s?wd=中文当在浏览器(我们使用的是Firefox2.0)的地址栏中输入上述URL并按回车键后,可以看到浏览器会自动对URL进行转义,得到的是:http://www.baidu.com/s?wd=%D6%D0%CE%C4可以看到“中文”已经被浏览器自动转义成为了%D6%D0%CE%C4,它们是汉字“中文”的GBK编码对应的转义形式。另外,不同的浏览器对URL进行转义的行为是不同的,具体内容请参阅6.1

4、.2节的介绍。当HTTP服务器收到这样的请求时,必须先将转义的字符解释为有效的字符,再对URL进行处理。但是,HTTP协议中并没有指定使用何种编码和字符集来解释URL中的非ASCII字符(细节可参阅RFC2396,2.1节),因此,是否能成功解析就完全取决于URL中非ASCIIgood,noloosening.6.5.2DCSsidewiringtocompletetheenclosureandtheothersideafterthewiringiscompleted,DCSwithintheenclosurewhenthepowermodulesh

5、ouldbeloosenedorthepowergoesout.6.6lowvoltagecableterminalmaking6.6.1first内容的编码是否与HTTP服务器的解析编码一致。例如,如果我们希望在Google中也搜索“中文”,构造如下URL:http://www.google.com/search?q=%D6%D0%CE%C4在浏览器地址栏中输入这个URL并按回车键后,会发现搜索结果页面查询的关键字并不是“中文”而是一个不能识别的乱码。这是因为Google的HTTP服务器使用UTF8编码来解释URL中的非ASCII字符。如果使用下面

6、以UTF8编码的URL就能得到正确的结果:http://www.google.com/search?q=%E4%B8%AD%E6%96%87请注意:Google在不同区域的服务器可能会使用不用的编码方式来解析URL。例如www.google.cn可以正确解析:http://www.google.cn/search?q=%D6%D0%CE%C4;而www.google.com只能正确解析:http://www.google.com/search?q=%E4%B8%AD%E6%96%87。而且,由于Google可以根据用户浏览器的区域设置自动将用户重定向

7、到某个特定区域的服务器上,因此在Firefox中,如果浏览器的首选区域是zh-cn,那么访问如下url:http://www.google.com/search?q=%D6%D0%CE%C4会被自动重定向到http://www.google.cn/search?q=%D6%D0%CE%C4,因此,显示的结果是正确的。3.采取“Post”方法的HTTP请求“Post”请求通常用来向HTTP服务器提交量比较大的数据(比如请求中包含许多参数或者文件上传操作等),它与“Get”方法的主要区别在于请求的参数包含在消息体而非URL中,服务器同样需要获得正确的编码

8、信息才能够正确解析在消息体中的请求参数。在“Post”方法的HTTP请求中,通常包含一个“Content-T

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。