怎样唯一确定一个request请求
1个回答
展开全部
1. request请求对象常用方法:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html; charset = utf-8");
this.response = response;
out = this.response.getWriter();
println("<ol>");
//1. 获取请求方式、处理乱码问题
String method = request.getMethod();
//servletRequest中的方法
request.setCharacterEncoding("utf-8");
//1. 获取请求体的编码方式
String characterEncoding = request.getCharacterEncoding();
println("getCharacterEncoding = " + characterEncoding);
//2. get body length
int contentLength = request.getContentLength();
println("getContentLength = " + contentLength);
//3. MIME type
String mimeType = request.getContentType();
println("getContentType = " + mimeType);
//4. 接收请求的接口的 Internet Protocol (IP) 地址
String ip = request.getLocalAddr();
println("getLocalAddr = " + ip);
//5. 基于 Accept-Language 头,返回客户端将用来接受内容的首选 Locale 客户端语言环境
Locale locale = request.getLocale();
println("getLocale = " + locale);
//6. 所有的语言环境
Enumeration<Locale> locales = request.getLocales();
while(locales.hasMoreElements()){
Locale temp = locales.nextElement();
println("\n Locales = " + temp);
}
//7. 接收请求的 Internet Protocol (IP) 接口的主机名
String localName = request.getLocalName();
println("localName = " + localName);
//8. 接收请求的接口的 Internet Protocol (IP) 端口号
int localPort = request.getLocalPort();
println("localPort = " + localPort);
//9. 返回请求使用的协议的名称和版本
String protocol = request.getProtocol();
println("protocol = " + protocol);
//10. 读取请求正文信息
BufferedReader reader = request.getReader();
println("getReader = " + reader.toString());
//11. 发送请求的客户端
String remoteAddr = request.getRemoteAddr();
println("RemoteAddr = " + remoteAddr);
//12. 发送请求的客户主机
String remoteHost = request.getRemoteHost();
println("RemoteHost = " + remoteHost);
//13. 发送请求的客户主机端口
int remotePort = request.getRemotePort();
println("RemotePort = " + remotePort);
//14. 返回用于发出此请求的方案名称,例如:http 、 https 、 ftp
String scheme = request.getScheme();
println("Scheme = " + scheme);
//15. 返回请求被发送到的服务器的主机名。它是Host头值":"(如果有)之前的那部分的值。 或者解析服务器名称或服务器的IP地址
String serverName = request.getServerName();
println("ServerName = " + serverName);
//16. 返回请求被发送到的端口。他是"Host"头值":" (如果有)之后的那部分的值,或者接受客户端连接的服务器端口。
int serverPort = request.getServerPort();
println("ServerPort = " + serverPort);
//17. 返回一个boolean值,指示此请求是否是使用安全通道(比如HTTPS) 发出的。
boolean secure = request.isSecure();
println("isSecure = " + secure);
//以上方法为 ServletRequest 接口提供的
//以下方法为 HttpServletRequest 接口提供的
/*
* 18. 返回用于保护servlet的验证方法名称。 所有的servlet容器都支持
* basic、 form和client certificate验证, 并且可能还支持digest验证
*/
String authType = request.getAuthType();
println("authType = " + authType);
//19. getDateHeader ??
request.getDateHeader("");
//20. 返回请求头包含的所有头名称的枚举。
Enumeration<String> headerNames = request.getHeaderNames();
println("<hr/>");
while(headerNames.hasMoreElements()){
String name = headerNames.nextElement();
println(" headerNmea = " + name + "; getHeader = " + request.getHeader(name));
}
println("<hr/>");
//21. 以int的形式返回指定请求头的值。 ???
request.getIntHeader("123");
//22. 返回与客户端发出此请求时发送的URL相关联的额外路径信息。
String pathInfo = request.getPathInfo();
println("PathInfo = " + pathInfo);
//23. 返回包含在请求RUL中路径后面的查询字符串。如果没有查询字符串返回null
String remoteUser = request.getRemoteUser();
println("RemoteUser = " + remoteUser);
//24. 返回客户端制定的回话ID
String requestedSessionId = request.getRequestedSessionId();
println("requestSessionId = " + requestedSessionId);
//25. 返回请求调用servlet的URL部分
String servletPath = request.getServletPath();
println("servletPath = " + servletPath);
//26. 返回与此请求关联的当前HttpSession,如果没有当前会话并且参数为true,则返回一个新会话。
HttpSession session = request.getSession(true);
println("getSession(true) = " + session);
//27. 返回包含当前已经过验证的用户的名称的java.security.Principal对象。如果用户没有经过验证,则该方法返回null
Principal userPrincipal = request.getUserPrincipal();
println("userPrincipal = " + userPrincipal);
//28. 检查会话的id是否作为Cook进入的
boolean sessionIdFromCookie = request.isRequestedSessionIdFromCookie();
println("sessionIdFromCookie = " + sessionIdFromCookie);
//29. 检查请求的会话ID是否作为请求的URL的一部分进入的
boolean sessionIdFromURL = request.isRequestedSessionIdFromURL();
println("sessionIdFormURL = " + sessionIdFromURL);
//30.
println("</ol>");
out.flush();
out.close();
}
public void println(Object obj){
this.response.setContentType("text/html;charset=utf-8");
try {
out.println("<li>");
out.println(obj);
out.println("</li>\n");
} catch (Exception e) {
e.printStackTrace();
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html; charset = utf-8");
this.response = response;
out = this.response.getWriter();
println("<ol>");
//1. 获取请求方式、处理乱码问题
String method = request.getMethod();
//servletRequest中的方法
request.setCharacterEncoding("utf-8");
//1. 获取请求体的编码方式
String characterEncoding = request.getCharacterEncoding();
println("getCharacterEncoding = " + characterEncoding);
//2. get body length
int contentLength = request.getContentLength();
println("getContentLength = " + contentLength);
//3. MIME type
String mimeType = request.getContentType();
println("getContentType = " + mimeType);
//4. 接收请求的接口的 Internet Protocol (IP) 地址
String ip = request.getLocalAddr();
println("getLocalAddr = " + ip);
//5. 基于 Accept-Language 头,返回客户端将用来接受内容的首选 Locale 客户端语言环境
Locale locale = request.getLocale();
println("getLocale = " + locale);
//6. 所有的语言环境
Enumeration<Locale> locales = request.getLocales();
while(locales.hasMoreElements()){
Locale temp = locales.nextElement();
println("\n Locales = " + temp);
}
//7. 接收请求的 Internet Protocol (IP) 接口的主机名
String localName = request.getLocalName();
println("localName = " + localName);
//8. 接收请求的接口的 Internet Protocol (IP) 端口号
int localPort = request.getLocalPort();
println("localPort = " + localPort);
//9. 返回请求使用的协议的名称和版本
String protocol = request.getProtocol();
println("protocol = " + protocol);
//10. 读取请求正文信息
BufferedReader reader = request.getReader();
println("getReader = " + reader.toString());
//11. 发送请求的客户端
String remoteAddr = request.getRemoteAddr();
println("RemoteAddr = " + remoteAddr);
//12. 发送请求的客户主机
String remoteHost = request.getRemoteHost();
println("RemoteHost = " + remoteHost);
//13. 发送请求的客户主机端口
int remotePort = request.getRemotePort();
println("RemotePort = " + remotePort);
//14. 返回用于发出此请求的方案名称,例如:http 、 https 、 ftp
String scheme = request.getScheme();
println("Scheme = " + scheme);
//15. 返回请求被发送到的服务器的主机名。它是Host头值":"(如果有)之前的那部分的值。 或者解析服务器名称或服务器的IP地址
String serverName = request.getServerName();
println("ServerName = " + serverName);
//16. 返回请求被发送到的端口。他是"Host"头值":" (如果有)之后的那部分的值,或者接受客户端连接的服务器端口。
int serverPort = request.getServerPort();
println("ServerPort = " + serverPort);
//17. 返回一个boolean值,指示此请求是否是使用安全通道(比如HTTPS) 发出的。
boolean secure = request.isSecure();
println("isSecure = " + secure);
//以上方法为 ServletRequest 接口提供的
//以下方法为 HttpServletRequest 接口提供的
/*
* 18. 返回用于保护servlet的验证方法名称。 所有的servlet容器都支持
* basic、 form和client certificate验证, 并且可能还支持digest验证
*/
String authType = request.getAuthType();
println("authType = " + authType);
//19. getDateHeader ??
request.getDateHeader("");
//20. 返回请求头包含的所有头名称的枚举。
Enumeration<String> headerNames = request.getHeaderNames();
println("<hr/>");
while(headerNames.hasMoreElements()){
String name = headerNames.nextElement();
println(" headerNmea = " + name + "; getHeader = " + request.getHeader(name));
}
println("<hr/>");
//21. 以int的形式返回指定请求头的值。 ???
request.getIntHeader("123");
//22. 返回与客户端发出此请求时发送的URL相关联的额外路径信息。
String pathInfo = request.getPathInfo();
println("PathInfo = " + pathInfo);
//23. 返回包含在请求RUL中路径后面的查询字符串。如果没有查询字符串返回null
String remoteUser = request.getRemoteUser();
println("RemoteUser = " + remoteUser);
//24. 返回客户端制定的回话ID
String requestedSessionId = request.getRequestedSessionId();
println("requestSessionId = " + requestedSessionId);
//25. 返回请求调用servlet的URL部分
String servletPath = request.getServletPath();
println("servletPath = " + servletPath);
//26. 返回与此请求关联的当前HttpSession,如果没有当前会话并且参数为true,则返回一个新会话。
HttpSession session = request.getSession(true);
println("getSession(true) = " + session);
//27. 返回包含当前已经过验证的用户的名称的java.security.Principal对象。如果用户没有经过验证,则该方法返回null
Principal userPrincipal = request.getUserPrincipal();
println("userPrincipal = " + userPrincipal);
//28. 检查会话的id是否作为Cook进入的
boolean sessionIdFromCookie = request.isRequestedSessionIdFromCookie();
println("sessionIdFromCookie = " + sessionIdFromCookie);
//29. 检查请求的会话ID是否作为请求的URL的一部分进入的
boolean sessionIdFromURL = request.isRequestedSessionIdFromURL();
println("sessionIdFormURL = " + sessionIdFromURL);
//30.
println("</ol>");
out.flush();
out.close();
}
public void println(Object obj){
this.response.setContentType("text/html;charset=utf-8");
try {
out.println("<li>");
out.println(obj);
out.println("</li>\n");
} catch (Exception e) {
e.printStackTrace();
}
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询