Http响应 (response)

Http响应 (response)

一,http响应消息
(一)http协议分为两个部分
1,请求消息:客户端发送给服务器端的数据
2,响应消息:服务器端发送给客户端的数据
设置完响应消息后,浏览器会自动的解析响应消息内容
3,数据格式
响应行、响应头、响应空行、响应体
4,响应字符串格式:
①,响应行
组成:协议+版本+响应状态码
例如:HTTP/1.1(版本) 404、200(状态码)
②,响应头
例如:
Content-Type: text/html;charset=utf-8响应内容的类型(html类型)和编码格式(utf-8)
Content-Language: en
Content-Length: 1085 响应内容的长度
Date: Thu, 30 Apr 2020 05:28:53 GMT 格林尼治时间
③,响应空行
空格
④,响应体:响应发送的数据
例如:
在这里插入图片描述
响应体是页面展示的 html内容
响应头是页面是如何展示的,展示的格式
(二)响应行的响应状态码
打开火狐浏览器的主页,右键检查,点击网络,查看响应头的原始头
1,响应行样式:
HTTP/1.1 200 OK
构成:协议/版本号 状态码 状态码描述
2,响应状态码:
服务器告诉浏览器本次请求响应的一个状态。用一个编码数字来表示状态码都是三维数字。
分类:
1**:服务器接收客户端的消息,但是没有接收完成,服务器等待一段时间,发送 1状态码来确认,是否需要接续发送消息。
2
:代表成功,本次请求响应成功。比如:200
3**:代表重定向(302)。
重定向:a找张三借钱,张三说我没钱,你去找李四,李四有钱。a很听话的去找李四借钱。这个过程,就叫重定向。
代表缓存(304) ∶当客户端访问浏览器的时候,如果服务器的资源固定不经常发生变化,在响应后就直接把这个资源存储在浏览器里面了,所以当客户端再次来访问的时候,服务器响应一个304,告诉客户端,不要从我这拿数据了,从自己家拿吧。如果资源后期发生了变化,就会自动刷新,不再让访问缓存。
4**:客户端错误
代表:404:请求路径没有对应的资源
代表:405:请求方式没有找到对应的请求方法
比如我们建—个servlet,把doGet方法删除,然后使用get请求。
5**:服务器端错误
代表:500:服务器内部出现异常
比如:我们在doget方法里面写一个int i=3/0;
服务器代码错误
(三)响应头
1、格式:
头名称:值

在这里插入图片描述
2,常见响应头的含义
Content-Type:服务器告诉客户端本次响应体的数据格式,编码格式,浏览器会根据响应的值,自动进行数据的解析。
如:查看jsp页面的编码格式contentType=“text/html; charset=utf-8”
修改后,在ie浏览器中查看不同的编码效果
Content-Length:本次响应体字节的个数
Date:日期
Connection:close:连接中断,与服务器失去联系,与网站无关
二,Response对象
功能:设置响应消息
(一)设置响应行
格式:协议/版本号 状态码
设置状态码:setStatus(int sc);
在这里插入图片描述
(二)设置响应头
setHeader(String name, String value)
(三)设置响应体
通过流的方式设置
使用步骤:
1,获取输出流
字符输出流 PrintWriter getWriter()
在这里插入图片描述
字节输出流 ServletOutputStream getOutputStream0
在这里插入图片描述
2,使用输出流,将数据输出到客户端浏览器中。

猜你喜欢

转载自blog.csdn.net/tan1024/article/details/111643394
今日推荐