rest api 操作 http status code

其实也不限 rest controller
如果要让一个 rest api 更容易做监控的话, 活用 http status code 是一个很便捷的方法

方法1 使用 responseEntity 做返回值
方法的返回值使用 responseEntity
通过调用 responseEntity 中操作 status code 的方法来修改输出时的 status code
也可以使用 ResponseEntity.notFound() 这样的工厂方法

方法2 使用 HttpServletResponse
在方法的形参中添加 HttpServletResponse response
然后在需要的地方 response.setStatus(HttpStatus.SC_NOT_FOUND);
直接操作 status code

方法3 使用 @statusCode 注解
通常还要配合 ExceptionHandler/ControllerAdvice 来使用
这个注解的意思是, 当这个 handlder 方法正常执行了, 会输出什么 status code
一旦定义了, 就是硬编码了, 无法动态修改

你可能感兴趣的:(rest api 操作 http status code)