我正在使用spring boot开发REST API . 我的要求是“用户启动进程,用户随时取消正在运行的进程” .
当他/她取消时,我会发送错误消息以及http状态代码 .
对于这种情况,我决定使用http状态代码499 .
但是这个状态代码在Spring框架HttpStatus类中不可用?
1.为什么这个状态代码不属于spring类(org.springframework.http.HttpStatus)的任何特定原因?
2.我可以使用什么替代状态代码而不是499?
状态代码499表示客户端的API在获得任何响应之前关闭了连接 .
2 回答
Spring Framework中的HttpStatus类的ENUM_CONSTANTS没有定义499状态代码 .
Check Documentation here
虽然,您可以尝试为您的用例创建控制器的自定义状态代码,如以下教程中所述
Create custom status code in Spring
它在
HttpStatus
上不可用,因为it's not assigned in the IANA registry .您无法使用
HttpStatus.valueOf
解析,但许多Spring API提供了int statusCode
方法参数变体,因此您无需在任何地方提供HttpStatus
.现在关于你的用例,除非我遗漏了什么,如果对方取消并关闭了连接,那么设置HTTP响应状态是没有意义的,因为你永远无法编写和发送它 - 是吗?