1 / 19
文档名称:

客户请求的处理HTTP请求报头.ppt

格式:ppt   大小:1,887KB   页数:19页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

客户请求的处理HTTP请求报头.ppt

上传人:中华文库小当家 2020/12/25 文件大小:1.84 MB

下载得到文件列表

客户请求的处理HTTP请求报头.ppt

文档介绍

文档介绍:客户请求的处理:HTTP请求报头
主讲:刘晓涛
议程
HTTP请求报头的读取
制作所有请求报头的表格
了解各种请求报头
通过压缩页面减少下载时间
区分不同的浏览器类型
个典型的HTTP请求
> get/ServLet/Search?ke ywords=servletstjsp Http/
Accept: image/gif, image/jpg, */
Connection: Keep-Alive
y Cookie: userID=id456578
>Host:
y Referer:

User-Agent: Mozilla/(compatible; MSIE
Windows NT 5. 0)
请求报头的读取
HttpservletreqUest中的方法)
通用方法
getHeader(报头名对大小写不敏感)
v getHeaders
o getHeader Names
专用方法
get Cookies
getAuthType / RemoteUser
getContentLength
get ContentTyp
getDateHeader
getIntHeader
获取相关信息的方法
getMethod, getRequestURI, getQuery String, getProtocol
缺失报头的检查
> Http
所有请求报头都是可选的

仅Host是必需的
结论
在试图使用由 request. getHeader返回的值之前一定要
检查它是否为null
String val request getHeader("Some-Name")
if
制作所有请求报头的表格
public class ShowrequestheadErs extends Httpservlet (
public void doget(hTtpservletreqUest request
HttpservletrespOnse response
throws Servlet Exception, IOException I
out printIn( docType +"<HTML>\n
<HEADX<TITLE>+title+</TITLE</HEAD>\n+
<BODY BGCOLOR="#FDF5E6">\n+
<H1 ALIGN=\"CENTER\ >"+ title +"</HI>n+
<B>Request Method: </B>+
"<BR>n"+
<B>Request URI: </B>+
RequesIURI( +<BR>\n+
<B>Request Protocol: </B>+
<BR><BR入n"+
制作所有请求报头的表格(续)
TABLE BORDER=1 ALIGN=\CENTER\>
<TR BGCOLOR="#FFAD00\>\n+
<TH>Header Name<TH> Header Value")
Enumeration headerNames
hile(header Names. hasMoreElements o)i
String headerName =(String) header Names. nextElemento
out println(<TRX<TD>"+ headerName)
out println(<TD>+
out println("</TABLE>\n</BODY></HTML>")
public void dopost(Httpservlet requeSt request
Httpserv letresponsE response
throws Servlet Exception, IOException
doGet(request, response): )

P Accept
标示
可以向不同的客户程序发送不同的内容。例如,PNG文
件拥有较好的压缩特性但并不被浏览器广泛支持
servlet可以检查浏览器是否支持PNG文件,如果支持
则发送< IMG SRC=" ".>否则发送<IMG
SRC="picture. gif
警告:在点击 Refresh按钮时,IE会错误在设置这个报
头。但在最初的请求中,对这个报头的设置是正确的
y Accept