客户请求的处理HTTP请求报头.ppt
《客户请求的处理HTTP请求报头.ppt》由会员分享,可在线阅读,更多相关《客户请求的处理HTTP请求报头.ppt(19页珍藏版)》请在三一办公上搜索。
1、客户请求的处理:HTTP请求报头,主讲:刘晓涛,议程,HTTP请求报头的读取制作所有请求报头的表格了解各种请求报头通过压缩页面减少下载时间区分不同的浏览器类型,一个典型的HTTP请求,GET/servlet/Search?keywords=servlets+jsp HTTP/1.1Accept:image/gif,image/jpg,*/*Accept-Encoding:gzipConnection:Keep-AliveCookie:userID=id456578Host:Referer:http:/Mozilla/4.0(compatible;MSIE 6.0;Windows NT 5.0)
2、理解HTTP无疑会有助于更有效地使用servlet和JSP,请求报头的读取(HttpServletRequest中的方法),通用方法getHeader(报头名对大小写不敏感)getHeadersgetHeaderNames专用方法getCookiesgetAuthType和getRemoteUsergetContentLengthgetContentTypegetDateHeadergetIntHeader获取相关信息的方法getMethod,getRequestURI,getQueryString,getProtocol,缺失报头的检查,HTTP 1.0所有请求报头都是可选的HTTP 1.1
3、仅Host是必需的结论在试图使用由request.getHeader返回的值之前一定要检查它是否为null。String val=request.getHeader(Some-Name);if(val!=null),制作所有请求报头的表格,public class ShowRequestHeaders extends HttpServlet public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException out.println(docTyp
4、e+n+title+n+n+title+n+Request Method:+request.getMethod()+n+Request URI:+request.getRequestURI()+n+Request Protocol:+request.getProtocol()+n+,制作所有请求报头的表格(续),n+n+Header NameHeader Value);Enumeration headerNames=request.getHeaderNames();while(headerNames.hasMoreElements()String headerName=(String)head
5、erNames.nextElement();out.println(+headerName);out.println(+request.getHeader(headerName);out.println(n);public void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException doGet(request,response);,常见HTTP 1.1请求报头,Accept标示浏览器能够处理的MIME类型可以向不同的客户程序发送不同的内容。例如,P
6、NG文件拥有较好的压缩特性但并不被浏览器广泛支持。servlet可以检查浏览器是否支持PNG文件,如果支持则发送否则发送。警告:在点击Refresh按钮时,IE会错误在设置这个报头。但在最初的请求中,对这个报头的设置是正确的Accept-Encoding标示浏览器能够处理的编码(如gzip或compress)参见随后的例子,常见HTTP 1.1请求报头(续),Authorization用于发送受密码保护的页面的用户身份验证信息。应该尽可能使用HTML表单来发送用户名/密码,在会话对象中存储信息;而不是这个报头。因为这种方式会弹出一个小而简练的对话框,许多用户不熟悉它。服务器拥有其他高级的方式来
7、设置受密码保护的页面,无须显式地在servlet中编写相关的代码。,常见HTTP 1.1请求报头(续),Connection在HTTP 1.0中,keep-alive表示浏览器能够处理持续性连接。在HTTP 1.1中,持续性连接是默认的。持续性连接表示:对于来自同一客户的相隔时间很近的请求(如与同一页面相关联的图像,或具有框架的页面中的不同单元),服务器可以重用已有的socket。servlet并不能单方面地完成这项工作;要使持续性连接的使用成为可能,它们能够做的就是给予服务器足够的信息。因此,它们应该用setContentLength设置Content-Length(输出的长度使用ByteA
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 客户 请求 处理 HTTP 报头
链接地址:https://www.31ppt.com/p-5360002.html