JSP request对象:获取客户端的请求信息

  • 内容
  • 评论
  • 相关

客户端可通过 HTML 表单或在网页地址后面提供参数的方法提交数据,然后通过 request 对象的相关方法来获取这些数据。request 对象封装了客户端的请求信息,包括用户提交的信息以及客户端的一些信息,服务端通过 request 对象可以了解到客户端的需求,然后做出响应。

request 对象是 HttpServletRequest(接口)的实例。请求信息的内容包括请求的标题头(Header)信息(如浏览器的版本信息语言和编码方式等),请求的方式(如 HTTP 的 GET 方法、POST 方法等),请求的参数名称、参数值和客户端的主机名称等。

request 对象提供了一些方法,主要用来处理客户端浏览器提交的请求中的各项参数和选项。表 1 列出了 request 对象常用的方法。下面介绍 request 对象的应用。

表1 request对象常用的方法
方法 说明
Object getAttribute(String name) 用于返回由 name 指定的属性值,如果指定的属性值不存在,
则返回一个 null 值
Enumeration getAttributeNames() 用于返回 request 对象的所有属性的名称集合
String getCharacterEncoding() 用于返回一个 String,它包含请求正文中所使用的字符编码
int getContentLength() 用于返回请求正文的长度(字节数),如果不确定,返回 -1
String getContenType() 得到请求体的 MIME 类型
ServletlnputStream getInputStream() 用于返回请求的输入流,用来显示请求中的数据
String getParameter(String name) 用于获取客户端传送给服务器端的参数。主要由 name 指定,
通常是表单中的参数
Enumeration getParameterNames() 用于获取客户端传送的所有参数的名字集合
String getParameterValues(String name) 用于获得指定参数的所有值,由 name 指定
String getProtocol() 用于返回客户端向服务器端传送数据所依据的协议名称
String getMethod() 用于获得客户端向服务器端传送数据的参数方法,主要有两个,
分别是 get() 和 post()
String getServerName() 用于获得服务器端的主机名字
int getServletPath() 用于获得 JSP 文件相对于根地址的地址
String getRemoteAddr() 用于获得客户端的网络地址
String getRemoteHost() 用于获取发送此请求的客户端主机名
String getRealPath(String path) 用于获取一虚拟路径的真实路径
cookie[] get Cookie() 用于获取所有的 Cookie 对象
void setAttribute(String key,Object obj) 设置属性的属性值
boolean isSecure() 返回布尔类型的值,用于确定这个请求是否使用了一个安全协
议,如 HTTP
boolean isRequestedSessionldPromCookie() 返回布尔类型的值,表示会话是否使用了一个 Cookie 来管理
会话 ID
boolean isRequestedSessionIdFromURL() 返回布尔类型的值,表示会话是否使用了一个URL来管理会话
ID
boolean isRequestedSessionldFromVoid() 检查请求的会话 ID 是否合法

获取客户信息

request 对象就是利用表 1 列举的那些 get 方法,来获取客户端的信息。

【例1】应用 request 对象获取客户信息,代码如下:

<%@ page contentType="text/html;charset=utf-8" %>
<html>
<head>
<title>
    request对象获取客户信息
</title>
</head>
<body>
客户提交信息的方式:<%=request.getMethod() %> <br/>
使用的协议:<%=request.getProtocol() %> <br/>
获取提交数据的客户端IP地址:<%=request.getRemoteAddr() %> <br/>
获取服务器端的名称:<%=request.getServerName() %> <br/>
获取服务器端口号:<%=request.getServerPort() %> <br/>
获取客户端的机器名称:<%=request.getRemoteHost() %> <br/>
</body>
</html>

送行结果如图 1 所示。

request对象常用的方法
图1 应用request对象获取客户信息

本文标题:JSP request对象:获取客户端的请求信息

本文地址:https://www.hosteonscn.com/3832.html

评论

0条评论

发表评论

邮箱地址不会被公开。 必填项已用*标注