首页 文章

如何在spring数据休息中添加自定义状态代码

提问于
浏览
0

我在做Spring Data REST . 按照这里描述的简单示例开始:http://spring.io/guides/gs/accessing-data-rest/我有一个我正在考虑的问题 .

查询“curl http://localhost:8080/people/search/findByLastName?name=Baggins”将返回HTTP状态200,(确定)即使未找到任何结果(json将为{}) . 如何让它返回HTTP状态404(当没有找到结果时) .

该文档仅提及标准状态代码:http://docs.spring.io/spring-data/rest/docs/current/reference/html/#repository-resources

1 回答

  • 1

    首先,当您没有结果时返回404并不是一个好主意 . 您应该返回状态 204 No Content .

    您可以创建一个使用_1556411注释的自定义异常(我建议使用此方法):

    @ResponseStatus(value = HttpStatus.NO_CONTENT)
         public class NoElementsFoundException extends Exception {
    }
    

    只要没有要返回的元素,就抛出此异常 .

    你也可以玩 HttpServletResponse .

相关问题