🦋 响应状态码
# 响应状态码
我们常见的 404、500、200 就是HTTP响应状态码,每个数字都有不同的语义,分别表示不同的响应状态
# 状态码分类
状态码 | 描述 |
---|---|
1xx | 响应中:表⽰服务器成功接收部分请求,要求客户端继续提交其余请求才能完成整个处理过程 |
2xx | 成功:表⽰服务器成功接收请求并已完成整个处理过程 |
3xx | 重定向:重定向到其它地方;它让客户端发起一个请求以完成整个处理 |
4xx | 客户端错误:表示客户端的请求有错误,如⽆法找到被请求的页⾯ |
5xx | 服务端错误:表示服务器端出现错误,如服务端代码执行过程中出现异常 |
若想知道所有的HTTP响应状态码的定义,可以在W3C官网查看《RFC2616规范 (opens new window)》
# 获取响应状态码
statusCode()
: 获取请求响应的状态码
- 返回值 : HTTP 状态码,但可能为 -1(表示未接收到服务端的响应信息)
// 获取请求响应的状态码
int statusCode = response.statusCode();
// 若状态码为 -1,则表示未接收到服务端的响应信息
if (statusCode == -1) {
System.out.println("未成功获得服务端响应信息");
}
1
2
3
4
5
6
7
2
3
4
5
6
7
# 判断响应状态码
Forest为了方便后续处理,提供了一些快捷的状态码判断方法,用来判断状态码的类型
# 判断状态码分类
status_1xx()
: 请求响应码是否在 100 ~ 199 范围内
- 返回值 :
true
代表在 100 ~ 399 范围内,false
表示不在
status_2xx()
: 请求响应码是否在 200 ~ 299 范围内
- 返回值 :
true
代表在 200 ~ 299 范围内,false
表示不在
status_3xx()
: 请求响应码是否在 300 ~ 399 范围内
- 返回值 :
true
代表在 300 ~ 399 范围内,false
表示不在
status_4xx()
: 请求响应码是否在 400 ~ 499 范围内
- 返回值 :
true
代表在 400 ~ 499 范围内,false
表示不在
status_5xx()
: 请求响应码是否在 500 ~ 599 范围内
- 返回值 :
true
代表在 500 ~ 599 范围内,false
表示不在
// 判断响应状态码是否是 1xx
boolean is_1xx = response.status_1xx();
// 判断响应状态码是否是 2xx
boolean is_2xx = response.status_2xx();
// 判断响应状态码是否是 3xx
boolean is_3xx = response.status_3xx();
// 判断响应状态码是否是 4xx
boolean is_4xx = response.status_4xx();
// 判断响应状态码是否是 5xx
boolean is_5xx = response.status_5xx();
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 判断状态码是否成功
statusOk()
: 请求响应码是否在成功范围内(100 ~ 399)
- 返回值 :
true
代表在 100 ~ 399 成功范围内,false
表示不在
// 判断响应状态码是否成功
boolean isOk = response.statusOk();
1
2
2
# 其他一些判断方法
// statusIs 方法可判断响应状态码是否为某一个数
boolean is_404 = reponse.statusIs(404);
// statusIsNot 方法可判断响应状态码是否不为某一个数
boolean not_500 = response.statusIsNot(500);
1
2
3
4
2
3
4
# 获取状态码短语
getReasonPhrase()
: 获取请求响应状态码的原因短语
- 返回值 : 请求响应状态码的原因短语,如状态码为 200 的时候,短语会是
OK
// 获取状态码短语
String phrase = response.getReasonPhrase();
System.out.println("状态码短语: " + phrase);
1
2
3
2
3
帮助我们改善此文档 (opens new window)
上次更新: 2023/06/19, 17:37:19