李言起 2021-10-13 16:55 采纳率: 100%
浏览 21
已结题

SOS 后台统一异常处理返回状态码问题 Java Spring SpringBoot

通过
**ResponseEntity.status(N).body(object); **
设置的状态码,如果200> N >1000,那么前端就获取不到body内容。
这个错误情况在前端项目中,可以得到状态码,但是获取不到响应体内容。

return ResponseEntity.status(1000).body(object);

我在postman测试会出现这种问题,但是在swagger测试却能正常返回?

swagger图示

img


postman图示,异常

img

枚举类型状态码

img


ResponseEntity返回

img

  • 写回答

1条回答 默认 最新

  • 编号灬9527 2021-10-13 17:13
    关注

    还真是,通过抓包,发现postman还是发送了请求,估计是它解析response,你这个异常的statusCode,导致他出问题了,这应该是浏览器和postman不同的解析原理导致的,不过为啥要通过status去传递业务code,你这要是以后改成字符串的code,这不就翻车了

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月25日
  • 已采纳回答 1月17日
  • 创建了问题 10月13日