目录
1 Http响应消息
响应消息:服务器端发送给客户端的数据
响应行 | 1. 组成:协议/版本 响应状态码 状态码描述 响应状态码分类: 1. 1xx:服务器就收客户端消息,但没有接受完成,等待一段时间后,发送1xx多状态码 2. 2xx:成功。代表:200 3. 3xx:重定向。代表:302(重定向),304(访问缓存) 4. 4xx:客户端错误。代表:404(请求路径没有对应的资源) 405:请求方式没有对应的doXxx方法 5. 5xx:服务器端错误。代表:500(服务器内部出现异常) |
响应头 | 格式:头名称: 值 常见的响应头: 1. Content-Type:服务器告诉客户端本次响应体数据格式以及编码格式 |
响应空行 | |
响应体 | 传输的数据 |
响应字符串格式
HTTP/1.1 200 OK
Content-Type: text/html;charset=UTF-8
Content-Length: 101
Date: Wed, 06 Jun 2018 07:08:42 GMT<html>
<head>
<title>$Title$</title>
</head>
<body>
hello , response
</body>
</html>
2 Response对象
Response对象实现响应消息,它可以设置响应行、响应头、响应题
设置响应行 | 格式:HTTP/1.1 200 ok 设置状态码:setStatus(int sc) |
设置响应头 | 设置响应头:setHeader(String name, String value) |
设置响应体 | 使用步骤: * 字节输出流:ServletOutputStream getOutputStream() 2. 使用输出流,将数据输出到客户端浏览器 |
3 Response对象设置响应行
3.1 Response完成重定向
重定向的特点:redirect | 1. 地址栏发生变化 2. 重定向可以访问其他站点(服务器)的资源 |
转发的特点:forward | 1. 转发地址栏路径不变 2. 转发只能访问当前服务器下的资源 3. 转发是一次请求,可以使用request对象来共享数据 |
列:请求与转发练习
@WebServlet("/responseDemo1")
public class ResponseDemo1 extends HttpServlet {
@Override
pr