[Servlet] HttpServletRequest

来源:互联网 发布:淘宝客服规范 编辑:程序博客网 时间:2024/05/21 14:53

HTTP请求消息和HTTP响应消息一样,也分为三部分,分别是请求行、请求消息头、消息正文。

获取请求行消息

HTTP请求信息中的第一行为请求行,格式如下:

GET /webdemo/servlet/HelloWorld?name=bill&age=52 HTTP/1/1

上面的请求行分为三部分,分别是请求方式(GET、POST、HEAD等)、资源路径和HTTP协议版本。

HttpServletRequest接口中定义了很多方法获取请求行中各部分的消息:

方法名 功能 值 getMethod 返回请求行中的请求方法(GET、POST、HEAD、PUT、DELETE) GET getRequestURI 返回请求行中的资源部分(不包含参数) /webdemo/servlet/HelloWorld getQueryString 返回请求行中的参数部分,也就是资源路径后面的“?”以后的所有内容,如果没有参数部分,返回null name=bill&age=52 getProtocol 返回请求行中的协议部分 HTTP/1.1 getContextPath 返回Web应用程序的上下文路径 /webdemo getServletPath 返回web.xml中<url-pattern>标签定义的Servlet映射路径 /servlet/HelloWorld getParameter 返回某一个参数的值,如获得name参数值得代码是getParameter(“name”) bill

获取网络连接消息

为了获取客户端和服务器与网络连接有关的信息,主要有以下一些方法:

方法名 功能 返回值 getRemoteAddr 返回客户机用于发送请求的IP地址 192.168.18.10 getRemoteHost 返回发出请求的客户机的主机名,如果Servlet无法解析,则返回客户机的IP 192.168.181.0 getRemotePort 返回客户机所使用的网络接口的端口号(这个值是由客户机的网络接口随机分配的) 1065 getLocalAddr 返回Web服务器上接收请求的网络接口使用的IP地址 192.168.18.254 getLocalName 返回Web服务器上接收请求的网络接口使用的IP地址对应的主机名 webserver getLocalPort 返回Web服务器上接收请求的网络接口的端口号 8080 getServerName 返回HTTP请求消息的Host字段的值的主机名部分 localhost getServerPort 返回HTTP请求消息的Host字段的值的端口号部分 8080 getScheme 返回请求的协议名,如http、https http getRequestURL 返回完整的请求URL(不包含参数部分),这个方法返回的是StringBuffer类型,而不是String类型 http://localhost:8080/webdemo/servlet/HelloWorld
原创粉丝点击