5.2.5 获得HTTP请求消息头

优质
小牛编辑
118浏览
2023-12-01

在HttpServletRequest接口中定义了若干读取HTTP请求消息中的头字段的方法,其中getHeader方法是最常用的方法。通过该方法可以获得指定字段头的值。除了getHeader方法外,在HttpServletRequest接口中还定义了很多其他获得请求头消息的方法,如getIntHeader、getDateHeader、getContentLength等。通过这些方法获得的请求头消息,可以实现更加强大的功能,如可以根据浏览器的语言设置输出相应国家语言的网页内容,或者可以使用Referer字段防止盗链。这些获得HTTP请求头消息的方法如下:

1. getHeader方法

该方法返回指定的HTTP请求消息头字段的值。如获得Host字段值的代码如下:

String host = getHeader("Host");

2. getHeaders方法

该方法返回一个Enumeration对象,该对象封装了某个指定名称的头字段的所有同名字段的值。

3. getHeaderNames方法

该方法返回一个Enumeration对象,该对象封装了所有的HTTP请求消息头字段的名称。

4. getIntHeader方法

该方法返回一个指定的整型头字段的值。

5. getDateHeader方法

该方法返回一个指定的日期头字段的值。

6. getContentType方法

该方法返回请求消息中请求正文的MIME类型,也就是Content-Type头字段的值。

7. getContentLength方法

该方法返回请求消息中请求正文的长度(以字节为单位),也就是Content-Length字段的值,如果未指定长度,返回-1。

8. getCharacterEncoding方法

该方法返回请求消息正文的字符集编码,通常从Content-Type头字段中提取。