request和response的常用方法

Request对象的作用是与客户端交互,收集客户端的Form、Cookies、超链接,或者收集服务器端的环境变量。request对象是从客户端向服务器发出请求,包括用户提交的信息以及客户端的一些信息。客户端可通过HTML表单或在网页地址后面提供参数的方法提交数据,然后服务器通过request对象的相关方法来获取这些数据。request的各种方法主要用来处理客户端浏览器提交的请求中的各项参数和选项。

request的常用方法:

 System.out.println("request.getAuthType():" + request.getAuthType()); // 获取保护servlet的认证方案名(BASIC或SSL),未受保护的servlet返回的就是null
    System.out.println("request.getCharacterEncoding():" + request.getCharacterEncoding()); // 获取字符编码
    System.out.println("request.getContentLength():" + request.getContentLength()); // 返回请求体内容的长度
    System.out.println("request.getContentType():" + request.getContentType()); // 获取内容类型
    System.out.println("request.getContextPath():" + request.getContextPath()); // 获取上下文路径,就是"/"+工程名
    System.out.println("request.getLocalAddr():" + request.getLocalAddr()); // 获取应用服务器的IP地址
    System.out.println("request.getLocalName():" + request.getLocalName()); // 获取应用服务器的主机名
    System.out.println("request.getLocalPort():" + request.getLocalPort()); // 获取应用服务器的端口号
    System.out.println("request.getMethod():" + request.getMethod()); // 获取请求方式获取请求方式(GET与POST为主,也会有PUT、DELETE、INPUT)
    System.out.println("request.getPathInfo():" + request.getPathInfo());
    System.out.println("request.getPathTranslated():" + request.getPathTranslated());
    System.out.println("request.getProtocol():" + request.getProtocol()); // 获取客户端向服务端传送数据使用的协议名称
    System.out.println("request.getQueryString():" + request.getQueryString()); // 获取追加到Url后面的查询字符串
    System.out.println("request.getRemoteAddr():" + request.getRemoteAddr()); // 获取发出请求的客户端的IP地址
    System.out.println("request.getRemoteHost():" + request.getRemoteHost()); // 获取发出请求的客户端的主机名
    System.out.println("request.getRemotePort():" + request.getRemotePort()); // 获取发出请求的客户端的端口号
    System.out.println("request.getRemoteUser():" + request.getRemoteUser()); // 如果用户已经过认证,则返回发出请求的用户登录信息 
    System.out.println("request.getRequestedSessionId():" + request.getRequestedSessionId()); // 获取sessionId
    System.out.println("request.getRequestURI():" + request.getRequestURI()); // 获取"/"+工程名+请求路径
    System.out.println("request.getRequestURL():" + request.getRequestURL()); // 获取完整的请求地址,不带queryString
    System.out.println("request.getScheme():" + request.getScheme()); // 获取当前链接使用的协议,一般应用就是http,SSL返回https
    System.out.println("request.getServerName():" + request.getServerName()); // 获取URL请求的名字(以Ip请求就是Ip,以域名请求就是域名)
    System.out.println("request.getServerPort():" + request.getServerPort()); // 获取URL请求的端口号
    System.out.println("request.getServletPath():" + request.getServletPath()); // 获取请求路径
    System.out.println("request.isSecure():" + request.isSecure()); // 获取此请求是否使用安全协议(比如https)

response的常用方法:

response的常用方法:

  • void sendError(int sc) 传送状态码(status code)

  • void sendError(int sc, String msg) 传送状态码和错误信息(会跳转到默认的错误页面,或者报错页面)

  • void setStatus(int sc) 设定状态码(如果不是200,则直接无法访问

setHeader():是一个通用的标头设定方法,您可以用它来设定任何「名称/值」的标头.

setIntHeader():是专门用来设定整数值标头的版本.

setDateHeader():是setHeader()的Date设定版本,第二个参数是设定Date的Long数值,0表示GMT 1970/1/1 00:00。

(Note:以上3个函数用来设置HTTP协议的表头,必须对HTTP协议有些了解才能正确使用).

setStatus():是用来设定回应的状态码,例如404 Not Found,HttpServletResponse类中提供了一些助忆常数设定,例如SC_NOT_FOUND就是表示404状态码(可以在Servlet API文件中查询相关的助忆常数).

sendError():会根据服务器的预设错误网页回报方式显示错误讯息.

sendRedirect():设置重定向页面.

getWriter():取得PrintWriter对象,由它来写出响应至服务器的本体信息.

response 对象主要将JSP 处理数据后的结果传回到客户端。

response 对象是实现javax.servlet.http.HttpServletResponse 接口。

response对象所提供的方法。

1.设定表头的方法

void addCookie(Cookie cookie) 新增cookie

void addDateHeader(String name, long date) 新增long类型的值到name标头

void addHeader(String name, String value) 新增String类型的值到name标头

void addIntHeader(String name, int value) 新增int类型的值到name标头

void setDateHeader(String name, long date) 指定long类型的值到name标头

void setHeader(String name, String value) 指定String类型的值到name标头

void setIntHeader(String name, int value) 指定int类型的值到name标头

2.设定响应状态码的方法

void sendError(int sc) 传送状态码(status code)

void sendError(int sc, String msg) 传送状态码和错误信息

void setStatus(int sc) 设定状态码

3.用来URL 重写(rewriting)的方法

String encodeRedirectURL(String url) 对使用sendRedirect( )方法的URL予以编码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值