使用spring和restful webservice自定义HTTP状态代码

时间:2012-12-01 09:41:28

标签: spring http rest status

我是春天和宁静框架的新手。我的服务器托管3个宁静的Web服务。我已经使用spring支持restful web服务来实现服务器。客户端将JSON请求发送到服务器并获取JSON响应。客户基于对restful的春天支持。服务器返回200 / OK以便成功处理,这是默认的。

我想要的是服务器在处理请求时遇到问题时向客户端发送自定义HTTP状态代码550。它不应该向客户端抛出任何异常。它应该只将550 / an_error_object(作为json)发送回客户端。

春天的支撑是如何可能的宁静?我在服务器端执行以下操作。

HttpServletResponse.setStatus(550)

但是,客户端未能识别状态代码550;它抛出一个异常,因为org.springframework.http.HttpStatus没有定义任何枚举常量'550'。

任何建议都会很棒!

提前致谢。

罗希特夏尔

2 个答案:

答案 0 :(得分:0)

1)请勿使用未注册的状态代码。请参阅registered status codes

2)话虽如此,这是Spring框架中的一个错误。它应该正确处理扩展状态代码。

答案 1 :(得分:0)

它可能会在Spring的4.3版本中修复。

https://jira.spring.io/browse/SPR-14205