java--基础--7.11--常用类--Request

java–基础–7.11–常用类–Request


1、常用方法

  • getRequestURL:返回客户端发出请求时的完整URL。
  • getRequestURI:返回请求行中的资源名部分。
  • getQueryString :返回请求行中的参数部分。
  • getPathInfo:返回请求URL中的额外路径信息。额外路径信息是请求URL中的位于Servlet的路径之后和查询参数之前的内容,它以"/"开头。
  • getRemoteAddr:返回发出请求的客户机的IP地址。
  • getRemoteHost:返回发出请求的客户机的完整主机名。
  • getRemotePort:返回客户机所使用的网络端口号。
  • getLocalAddr:返回WEB服务器的IP地址。
  • getLocalName:返回WEB服务器的主机名。

2、获得客户机请求头

  • getHeader(string name)
  • String getHeaders(String name)
  • Enumeration getHeaderNames()
public class Demo1 extends HttpServlet {
	public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
		//一次性取得所有的请求头信息
		Enumeration<String> enums = request.getHeaderNames();
		while(enums.hasMoreElements()){
			//key表示请求头
			String key = enums.nextElement();
			Enumeration<String> enums2 = request.getHeaders(key);
			while(enums2.hasMoreElements()){
				String value = enums2.nextElement();
				response.getWriter().write(key+"<->"+value+"<br/>");
			}
		}
		
		/*
		String acceptLanguage = request.getHeader("Accept-Language");
		String userAgent = request.getHeader("User-Agent");
		String host = request.getHeader("Host");
		*/
	}
}

3、获得客户机请求参数(客户端提交的数据)

  • getParameter(String)
  • getParameterValues(String name)

4、防盗链

 //取得浏览器来自于何方
String referer = request.getHeader("referer");
if(referer.equals("http://localhost:8080/index.html")){
}

5、转发

request.getRequestDispatcher("/WEB-INF/success.html")
        .forward(request,response);

5、重定向

前后的二个Request域对象不同,如果取值不到,返回"null",不会报错

5.1、重定向和转发区别

  • 转发
    • 只能相对于当前web应用而言,不能转发到其它web应用
    • 转发是服务端的内部行为,浏览器不知
    • 转发时二个Servlet共享request域对象
  • 重定向
    • 重定向任何资源
    • 重定向是浏览器和服务端的共同行为,浏览器必知
    • 重定向时二个Servlet独享request域对象

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值