up:: web开发基础内容概述
Servlet与JSP进阶部分主要阐述:JavaWeb更深入的核心特性;Servlet核心对象;JSP九大内置对象;
一:请求
1:HTTP请求的结构
请求:是从浏览器向Tomcat服务器所发送的数据包;
(1)请求行:说明请求方法,请求的url,HTTP的版本信息;
(2)请求头:包含了很多辅助性的信息,可以为程序处理提供额外的数据支持;
当前浏览器所设置的语言;
比如,同样是访问谷歌,国内的浏览器显示的是中文,国外的浏览器显示的是英文;谷歌为什么在不同的浏览器上显示内容不一样呐?就是因为不同的浏览器其发送请求的请求头中的Accept-Language设置的不一样;
所以,以后开发程序的时候,要考虑到用户有国内的有国外的,一定要根据不同的请求发送不同的语言版本,这有一个术语叫:国际化:
:说明了浏览器和操作系统的环境;
:代表内容的长度,即发送数据的总长度;
:缓存的设置;
:Cookie的设置;
上面只是简单说明,以后会深入了解;
(3)请求体:参数:get没有请求体
:请求体中有多个参数;
需要注意get请求,把参数放在了url中,其是没有请求体的;只有Post请求才有请求体!!!!!!!!!!!!!!!!!
2:演示案例
(1)在eclipse中创建servlet的快捷方式:
(2)为了演示访问,创建一个HTML:分别修改Fome表单的提交方式,get和post:
request_struc:上面案例的工程代码,在这个远程仓库中;
分析:
(3)get请求时:
(4)post请求时:
注:(1)get和post请求,请求头的差别不大;主要区别是get没有请求体,get把参数放在了url中;post有请求体,post把参数放在了请求体中;(2)没事可以多看看NetWork中的内容给你;
3:利用请求头开发多端应用:User-Agent
(1)情况展示:
平时,同一个网站,在电脑上和手机上显示的效果完全不同,这背后的本质就是程序通过读取请求头,来判断是手机还是电脑。
发现不同版本上的显示效果不同,然后其请求头中User-Agent也不同:
User-Agent得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等;
(2)获取当前请求头中的User-Agent信息
(3)根据User-Agent信息,判断是PC端还是移动端
估计,判断出是PC端还是移动端,方便后续区别处理;
servlet_advanced:上面工程的代码放在了这个远程仓库中了;
效果: