Request&Response
请求流程
- tomcat服务器根据url中的路径,创建对应的Servlet对象。
- 创建request和response对象,将请求消息数据封装到Request中。
- 将Request和response传递给service方法,并调用。
- 将方法中设置的response对象的消息数据进行响应。
request和response的原理
- request和response由服务器创建。
- request用来获取请求消息,response用来设置响应消息。
request对象继承结构
- ServletRequest:接口
- HttpServletRequest:接口
- RequestFacade:类
Request
-
获取请求消息
-
获取请求行
- String getMethod():获取请求方式
- String getContextPath():获取虚拟目录
- String getServletPath():获取Servlet路径
- String getQueryString():获取get方式请求参数
- String getRequestURI():获取请求uri
- StringBuffer getRequestURL():获取url
- String getProtocol():获取协议及协议版本
- String getRemoteAddr():获取客户机IP地址
-
获取请求头
-
String getHeader(String name):通过名称获取请求头的值
-
Enumeration<String> getHeaderNames():获取所有的请求头名称
-
/** * 获取请求头 */ Enumeration<String> enumerations = req.getHeaderNames(); while (enumerations.hasMoreElements()){ String name = enumerations.nextElement(); System.out.println(name + "---->" + req.getHeader(name)); }
-
-
获取请求体
-
只有post请求方式才有请求体。
-
步骤
-
获取流对象
-
BufferedReader getReader():获取字符输入流,只能操作字符数据。
-
BufferedReader reader = req.getReader(); char</
-
-
-
-