【JavaEE】_HTTP响应

目录

[1. 首行](#1. 首行)

[2. 报头header](#2. 报头header)

3.空行

[4. 正文body](#4. 正文body)


1. 首行

响应首行:版本号+状态码+状态码描述

HTTP状态码描述了这次响应的结果(比如成功、失败,以及失败原因等);

  1. HTTP状态码有:

(来源:搜狗百科)

  1. 常见HTTP状态码有:

1)200 OK, 表示访问成功

(2)404 Not Found, 表示访问的资源不存在,在服务器上查询无果

如访问:

页面显示:

也可在fiddler中查看:

注:404返回的错误页面可以在body中进行设置,很多网站会把这个页面设计得非常丰富多彩;

(3)403 Forbidden:无访问权限,访问被拒绝

(4)302 Move temporarily:重定向

重定向类似于呼叫转移,在登录页面302非常常见,用于实现登陆成功后自动跳转到主页;

302这样的响应报文中会在header中带有一个Location属性,通过这个属性来描述要跳转到哪个新的地址;

注:注意区别重定向与请求转发:

请求转发是servlet/spring里提供的机制;重定向是HTTP里提供的机制

请求转发只能在该服务器内部的资源之间转发,重定向可以重定向到外部资源,即可跳转到别的网站

请求转发只有一次交互,更高效;重定向需要进行两次交互

(5)500系列:服务器内部错误

如:504 gateway timeout:请求超时等等;

注:gateway即网关,是一个网络的出入口,通常也用来指代一个机房的入口服务器,192.168.1.1这种ip一般是网关ip;

可总结如下:

|---------|----------------------------|---------------|
| | 类别 | 原因短语 |
| 1XX | Informational(信息性状态码) | 接受的请求正常处理 |
| 2XX | Success(成功状态码) | 请求正常处理完毕 |
| 3XX | Redirection(重定向状态码) | 需要进行附加操作以完成请求 |
| 4XX | Client Error(客户端错误状态码) | 服务器无法处理请求 |
| 5XX | Server Error(服务器错误状态码) | 服务器处理请求出错 |

注:HTTP状态码是RFC标准明确规定的,不允许自定义;

2. 报头header

与HTTP请求相同,HTTP响应的报头也是键值对格式;

关于HTTP请求的详细内容,请查看HTTP请求报头部分文章,链接如下:

【JavaEE】_HTTP请求报头header-CSDN博客

3.空行

与HTTP请求相同,空行是header的结束标记;

4. 正文body

根据不同的Content-Type,设置具体的响应数据格式与内容;

相关推荐
范桂飓1 小时前
RoCEv2 高性能传输协议与 Lossless 无损网络
网络
zl0_00_01 小时前
upload-labs
网络
你怎么睡得着的!3 小时前
【护网行动-红蓝攻防】第一章-红蓝对抗基础 认识红蓝紫
网络·安全·web安全·网络安全
人工干智能4 小时前
科普:你的笔记本电脑中有三个IP:127.0.0.1、无线网 IP 和局域网 IP;两个域名:localhost和host.docker.internal
网络协议·tcp/ip·电脑
anddddoooo8 小时前
域内证书维权
服务器·网络·网络协议·安全·网络安全·https·ssl
Long._.L8 小时前
OpenSSL实验
网络·密码学
Dyan_csdn8 小时前
【Python项目】基于Python的Web漏洞挖掘系统
网络·python·安全·web安全
mit6.8249 小时前
[实现Rpc] 通信-Muduo库的实现 | && 完美转发 | reserve | unique_lock
c++·网络协议·rpc
IsToRestart9 小时前
什么是RPC,和HTTP有什么区别?
网络协议·http·rpc