我目前有代码检查 HTTP 响应是否有“成功”状态代码。
// Accept any 200 series status code (200, 201, 202, 203, ...)
// as being 'successful'.
if (response.status / 100 == 2) {
// process response
} else {
throw new Exception("Something went wrong...");
}
这是执行此操作的规范方法吗?还是有其他一些我不知道的不那么丑陋的方法来做到这一点?
最佳答案
我怀疑是否有更好的规范方法。如果你有 Jersey ,你可以写
Response.Status.Family.SUCCESSFUL == Response.Status.fromStatusCode(response.status).getFamily()
顺便说一下,并不是所有可能的状态代码都包含在 Status
枚举中。但即使 Jersey 在内部也使用 Adam 发布的算法来确定 Family
。
关于java - 是否有一种规范的方法来确定 HTTP 响应是否在 Java 的 200 系列中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19128917/