HttpStatusCode 是任何 500 类型

本文关键字:类型 任何 HttpStatusCode | 更新日期: 2023-09-27 18:32:55

我想知道是否有更简单的方法(更好的方法)来检查 500 状态代码?

我能想到的唯一方法是这样做:

var statusCodes = new List<HttpStatusCode>()
{
  HttpStatusCode.BadGateway,
  HttpStatusCode.GatewayTimeout,
  HttpStatusCode.HttpVersionNotSupported,
  HttpStatusCode.InternalServerError,
  HttpStatusCode.NotImplemented,
  HttpStatusCode.ServiceUnavailable
};
if (statusCodes.Contains(response.StatusCode))
{
  throw new HttpRequestException("Blah");
}

我注意到这些是 500 种类型:

  • 坏网关
  • 网关超时
  • HttpVersionNotSupport
  • 内部服务器错误
  • 未实现
  • 服务不可用

HttpStatusCode 是任何 500 类型

以 5xx 开头的状态代码是服务器错误,因此简单的方法是

if ((int)response.StatusCode>=500 && (int)response.StatusCode<600)
      throw new HttpRequestException("Server error");
相关文章: