使用servlet处理http响应

使用Servlet发送服务器端响应信息

Servlet中对HTTP请求的处理过程:

1、  Web浏览器通过打开一个到Web服务器的TCP Socket套接字初始化一个HTTP请求。

2、  对于一个Servlet的每次访问请求,Web容器都会解析Socket输入流中的HTTP请求流数据,创建一个请求对象。同时,创建一个响应对象,用于产生Socket输出流中的HTTP响应流

3、  Web容器调用唆请求的Servlet对象的service()方法,并将请求和响应对象作为参数传递给该方法。其中,作为参数传递进来的响应对象就是HttpServletResponse对象,在Servlet对象的service()方法内部可以调用HttpServletResponse对象的各种方法来创建响应消息

设置响应状态行

状态行分为 HTTP协议,状态码,状态描述三个部分

HTTP状态码分类

100-199 表示信息性代码,表示客户端应采取的其他行动,请求正在进行

200-299 表示客户请求成功

300-399 表示用于已经移走的资源文件,指示新的地址

400-499 表示由客户端引发的错误

500-599 表示由服务器端引发的错误

设置状态码

Servlet设置状态码一般使用HttpServletResponse的setStatus()方法。

简单起见HttpServletResponse为两种常见的情形提供了专用方法:

1、  sendError方法该方法生成一个404的应答,同时生成一个简短的HTML错误信息文档发送给客户

2、  sendRedirect 方法该方法生成一个302的应答,同时在Location头中指示新文档的URL地址

设置响应头

containsHeader(String name)  返回一个布尔值,指示是否设置了制定的响应头

setHeader(String name,String value)  用一个给定的名称和字符串值设置响应头的通用方式。

setIntHeader(String name,int value) 用一个给定的名称和整型值设置响应头。

setDateHeader(String name,long date) 用一个给定的名称和日期值设置响应头

addHeader(String name,int value) 用于在response 中添加一个给定名称和字符串的响应头

addDateHeader(String name,long date) 用于在response 中添加一个给定名称和日期的响应头

setContentType(String mimetype) 用于设置返回给客户端内容的MIME类型

addCookie(Cookie c) 用于向Set-Cookie报头插入一个Cookie

 

设置消息体

使用getWrite()或者getOutputStream()方法,以获取输出流来写入响应内容 传递文本流和传递二进制流

 

设置请求重定向

使用sendRedirect方法实现重定向

 

设置自动刷新和等待页面

Response.setHeader(“Refresh”,”time; URL=url”)

Response.setHeader(“Refresh”,”10; URL=http://localhost/index.html”)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值