今天看项目代码时看到request.getScheme()和request.getServerName(),一时没想到是怎么用的,上网查了查资料,记录下来,供以后翻阅.
1、request.getScheme() 返回当前链接使用的协议;一般应用返回http;SSL返回https;
2、在程序中的代码是这样的:
3、request.getScheme()可以返回当前请求所使用的协议:http或者https;
request.getServerName()可以返回当前请求所在的服务器名称
request.getRequestURL()返回当前请求客户端发出的完整URL
request.getRequestURI()返回请求行中的请求资源名部分
request.getQueryString()返回请求行中的参数部分
request.getServerPort()可以返回当前页面所在的服务器使用的端口;
request.getContextPath()可以返回当前页面所在的应用的名字;
request.getPathInfo方法返回请求URL中的额外路径信息。额外路径信息是请求URL中的位于Servlet的路径之后和查询参数之前的内容,它以“/”开头。
request.getRemoteAddr方法返回发出请求的客户机的IP地址。
request.getRemoteHost方法返回发出请求的客户机的完整主机名。
request.getRemotePort方法返回客户机所使用的网络端口号。
request.getLocalAddr方法返回WEB服务器的IP地址。
request.getLocalName方法返回WEB服务器的主机名。
4.request对象作为一个域对象(Map容器)使用时,主要是通过以下的四个方法来操作
setAttribute(String name,Object o)方法,将数据作为request对象的一个属性存放到request对象中,例如:request.setAttribute(“data”, data);
getAttribute(String name)方法,获取request对象的name属性的属性值,例如:request.getAttribute(“data”)
removeAttribute(String name)方法,移除request对象的name属性,例如:request.removeAttribute(“data”)
getAttributeNames方法,获取request对象的所有属性名,返回的是一个,例如:Enumeration attrNames = request.getAttributeNames();
5.请求重定向和请求转发的区别
通过ServletContext.getRequestDispather(String path)方法,可以获取RequestDispather对象,调用该对象的forword方法,可以实现请求转发
一个web资源收到客户端请求后,通知服务器去调用另外一个web资源进行处理,称之为请求转发/307。
一个web资源收到客户端请求后,通知浏览器去访问另外一个web资源进行处理,称之为请求重定向/302。