Scala:发送Rest服务的响应代码
我有一个类似于以下的控制器:Scala:发送Rest服务的响应代码,scala,web-services,rest,spring-mvc,spring-boot,Scala,Web Services,Rest,Spring Mvc,Spring Boot,我有一个类似于以下的控制器: @RestController @RequestMapping(Array("/x/hello")) class HelloController { @Autowired private val helloService: HelloService = null var helloRequest: Option[HelloRequest] = _ @RequestMapping def world: Option[Hel
@RestController
@RequestMapping(Array("/x/hello"))
class HelloController {
@Autowired
private val helloService: HelloService = null
var helloRequest: Option[HelloRequest] = _
@RequestMapping
def world: Option[HelloRequest] = {
helloService.worldInstances
}
当请求成功且状态代码为200时,worldInstances返回选项[HelloRequest]的实例
现在,当出现问题时,worldInstances会发送Option[HelloRequest]类型的消息。
在这种情况下,我需要一个定制的状态代码(比如400,它与400个错误请求的http状态代码不同),而不是200。(无论是否成功,它发送的响应的格式都相同,但状态代码必须不同)
在这种情况下,如何显式设置状态代码 在spring mvc中,您有
@ExceptionHandler
或@ControllerAdvice
,您抛出异常,并在ExceptionHandler中决定执行什么操作:
对于ref,您可以查看:在spring mvc中,您有
@ExceptionHandler
或@ControllerAdvice
,您抛出异常,并在ExceptionHandler中决定要做什么:
关于ref,您可以查看:控制器是否自动将响应编码为json?请参阅编辑后的问题。响应类型为DAASRequest控制器是否自动将响应编码为json?请参阅编辑后的问题。响应类型为DaasRequest