JSP request对象功能详解说明

java-教程王 Java教程 发布时间:2021-12-09 15:06:39 阅读数:8087 1
下文笔者讲述request对象的功能简介说明,如下所示:
 request的功能:
    request是HttpServletRequest类的实例
    request对象中封装了客户端请求的数据信息,通过获取request对象中的信息,我们可获取客户端的请求信息  

request对象中的方法

string getProtocol() 返回请求用的协议类型及版本号 request.getProtocol() 输出:HTTP/1.1
getServletConfig().getServletContext().getServerInfo() 服务器信息 输出:JavaServer Web Dev Kit/1.0 EA (JSP 1.0; Servlet 2.1; Java 1.2; Windows NT 5.0 x86; java.vendor=Sun Microsystems Inc.)
String getRemoteAddr() 返回发送此请求的客户端IP地址 request.getRemoteAddr() 输出:192.168.8.8
String getRemoteHost() 返回发送此请求的客户端主机名
String getCharacterEncoding() 返回字符编码方式 request.getCharacterEncoding() 输出:GB2312
int getContentLength() 返回请求体的长度(以字节数)
String getContentType() 得到请求体的MIME类型 8. string getAuthType() 获取Authorization头 request.getContentType() 输出:basic或者digest
string getMethod() 获取请求类型 输出:通常是GET或者POST。但偶尔也会出现HEAD,PUT, Delete,OPTIONS,或者 TRACE.
string getPathInfo() 获取URL中的附加路径信息 输出:URL中Servlet路径之后、查询字符串之前的那部分
string getPathTranslated() 映射到服务器实际路径之后的路径信息
string getQueryString() 这是字符串形式的附加到URL后面的查询字符串,数据仍旧是URL编码的。
string getRemoteUser() 如果提供了Authorization头,则代表其用户部分。它代表发出请求的用户的名字。
string getRequestedSessionId() 输出SessionId
string getRequestURI() 请求URL
string getServletPath() URL中调用Servlet的那一部分,不包含附加路径信息和查询字符串
string getHeader() 获取请求头部信息 getHeader("Accept") //访问Accept的HTTP头。 getHeader("Host") //输出:192.168.8.8:8080
String getServerName() 返回接受请求的服务器主机名 request.getServerName() 输出:192.168.8.8
int getServerPort() 返回服务器接受此请求所用的端口号 request.getServerPort() 输出:8080
ServletInputStream getInputStream() 得到请求体中一行的二进制流
String getScheme() 返回请求用的计划名,如:http.https及ftp等
BufferedReader getReader() 返回解码过了的请求体
void setAttribute(String key,Object obj) 设置属性的属性值
String getRealPath(String path) 返回一虚拟路径的真实路径
String getParameter(String name) 返回name指定参数的参数值
Enumeration getParameterNames() 返回可用参数名的枚举
String[] getParameterValues(String name) 返回包含参数name的所有值的数组
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %> 
<%@ page import="java.util.*" %> 
<htm> 
<head> 
</head>
<body> 
客户使用的协议是: 
<% 
    String strProtocol = request.getProtocol(); 
    out.print(strProtocol); 
%> 
<br/> 
获取客户提交信息的页面: 
<% 
    String strPath = request.getServletPath(); 
    out.print(strPath); 
%> 
<br/> 
接受客户提交信息的长度 
<% 
    int intLength = request.getContentLength(); 
    out.print(intLength); 
%> 
<br/> 
客户提交信息的方式: 
<% 
    String strMethod = request.getMethod(); 
    out.print(strMethod); 
%> 
<br/> 
获取HTTP头文件中User-agent的值 
<% 
    String strUserAgent = request.getHeader("User-Agent"); 
    out.print(strUserAgent); 
%> 
<br/> 
获取HTTP头文件中的accept值 
<% 
    String strAccept = request.getHeader("accept"); 
    out.print(strAccept); 
%> 
<br/> 
获取HTTP头的Host的值 
<% 
    String strHost = request.getHeader("Host"); 
    out.print(strHost); 
%> 
<br/> 
获取HTTP头文件中accept-encoding的值 
<% 
    String strAcceptEncoding = request.getHeader("accept-encoding"); 
    out.print(strAcceptEncoding); 
%> 
<br/> 
获取客户的IP地址 
<% 
    String strIP = request.getRemoteAddr(); 
    out.print(strIP); 
%> 
<br/> 
获取客户机的名称 
<% 
    String strClientName = request.getRemoteHost(); 
    out.print(strClientName); 
%> 
<br/> 
获得服务器的名称 
<% 
    String strServerName = request.getServerName(); 
    out.print(strServerName); 
%> 
<br/> 
获得服务器端口号 
<% 
    int strServerPort = request.getServerPort(); 
    out.print(strServerPort); 
%> 
<br/> 
获取客户端提交的所有参数名字:<br/> 
<% 
    Enumeration<String> enumer = request.getParameterNames(); 
    while(enumer.hasMoreElements()) 
    { 
        String s = (String) enumer.nextElement(); 
        out.print(s); 
        out.print("<br/>"); 
    } 
%> 
<br/> 
获取头名字的一个枚举:<br/> 
<% 
    Enumeration<String> enumHead = request.getHeaderNames(); 
    while(enumHead.hasMoreElements()) 
    { 
        String s = (String) enumHead.nextElement(); 
        out.print(s); 
        out.print("<br/>"); 
    } 
%> 
<br/> 
获取头文件中指定头名字的全部值的一个枚举<br/> 
<% 
    Enumeration<String> enumCookies = request.getHeaders("cookie"); 
    while(enumCookies.hasMoreElements()) 
    { 
        String s = (String)enumCookies.nextElement(); 
        out.print(s); 
        out.print("<br/>"); 
    } 
%> 
<br/> 
</body> 
</html>
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaCourse/202112/2059.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者