You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java Spring Boot中如何创建并返回自定义HTTP响应状态码

Spring 自定义HTTP响应状态码实现方案

你可以直接通过传入整型数值的方式定义自定义状态码,不需要局限于HttpStatus枚举提供的标准值,修改后的代码参考如下:

@RequestMapping(value = "/status/test", method = RequestMethod.PUT, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Test> testStatus(@RequestBody Test test)
    throws Exception {
    // 声明自定义234状态码
    int customStatusCode = 234;
    // 直接使用状态码数值构造响应
    return ResponseEntity.status(customStatusCode).body(test);

    // 如果你需要获取HttpStatus对象也可以用valueOf方法构造
    // HttpStatus customStatus = HttpStatus.valueOf(234);
    // return new ResponseEntity<Test>(test, customStatus);
}

使用自定义状态码的注意事项:

  • 尽量让自定义状态码符合HTTP协议的区间规则:2xx对应成功类业务、3xx对应重定向类业务、4xx对应客户端触发的错误类业务、5xx对应服务端触发的错误类业务,降低和未来新增标准状态码冲突的概率
  • 上线前需要确认业务链路中的反向代理、API网关、WAF等中间件支持透传非标准HTTP状态码,部分中间件默认会拦截或改写不识别的状态码
  • 如果同一个自定义状态码需要在多个接口使用,建议封装为全局常量统一管理,避免硬编码

内容的提问来源于stack exchange,提问作者ab AL

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 19:36:02