繁体   English   中英

将字符串错误响应转换为 Http 状态代码

[英]Convert String error response to Http Status code

在我使用的 Java+Spring 应用程序中,从第三方通过RestTemplate ,我们在 JSON 中获得错误响应,其中包含 200 个响应代码。

例如

{
    "errors": [{
        "reason": "did not like the request",
        "error": "BAD_REQUEST"
    }]
}

如何将BAD_REQUEST转换为 400 个整数表示。 Apache HttpStatus inte 似乎没有提供任何接口来这样做。

也许你可以使用org.springframework.http.HttpStatus

String error = "BAD_REQUEST";
HttpStatus httpStatus = HttpStatus.valueOf(error);
int errorIntCode = httpStatus.value();

或更安全:

String error = "BAD_REQUEST";
HttpStatus httpStatus = Arrays.stream(HttpStatus.values())
        .filter(status -> status.name().equals(error))
        .findAny()
        .orElse(HttpStatus.INTERNAL_SERVER_ERROR);
int errorIntCode = httpStatus.value();

更简洁更简短

HttpStatus.OK.value();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM