归子莫的博客

「笔杆揭不起,绘不出青烟别春泥 ————归子莫」

HTTP–Response详解

博客说明

文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢!

响应消息数据格式

响应行
  1. 组成:协议/版本 响应状态码 状态码描述
  2. 响应状态码:服务器告诉客户端浏览器本次请求和响应的一个状态
    1. 态码都是3位数字
    2. 分类:
      1. 1xx:服务器就收客户端消息,但没有接受完成,等待一段时间后,发送1xx多状态码
      2. 2xx:成功。代表:200
      3. 3xx:重定向。代表:302(重定向),304(访问缓存)
      4. 4xx:客户端错误
        • 404(请求路径没有对应的资源)
        • 405:请求方式没有对应的doXxx方法
      5. 5xx:服务器端错误。代表:500(服务器内部出现异常)
响应头
  1. 格式:头名称: 值
  2. 常见的响应头:
    1. Content-Type:服务器告诉客户端本次响应体数据格式以及编码格式
    2. Content-disposition:服务器告诉客户端以什么格式打开响应体数据
      • in-line:默认值,在当前页面内打开
      • attachment;filename=xxx:以附件形式打开响应体。文件下载
响应空行
响应体:传输的数据

响应字符串格式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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>

Response对象

设置响应消息
  1. 设置响应行

    1. 格式:HTTP/1.1 200 ok
    2. 设置状态码:setStatus(int sc)
  2. 设置响应头:setHeader(String name, String value)

  3. 设置响应体:

    • 使用步骤:

      1. 获取输出流

        • 字符输出流:PrintWriter getWriter()

        • 字节输出流:ServletOutputStream getOutputStream()

      2. 使用输出流,将数据输出到客户端浏览器

感谢

黑马程序员

万能的网络

以及勤劳的自己

评论