2017-07-19 22 views
0

當我使用@PostMapping時,我將通過ResponseStatus註釋一起給出CREATED(201)響應狀態。與@DeleteMapping,@PutMapping等相同。可以在RequestMapping中設置默認的ResponseStatus?

那麼,有什麼辦法可以在不同的requestMapping中設置默認響應狀態嗎?

+0

可能的重複[如何響應HTTP 400錯誤在Spring MVC @ResponseBody方法返回字符串?](https://stackoverflow.com/questions/16232833/how-to-respond-with-http-400- error-in-a-spring-mvc-responsebody-method-returnin) – Tom

+0

對不起,說明書可能有問題。我知道如何通過返回ResponseEntity返回狀態碼或使用ResponseStatus註解。我想要的是是否有配置方法,使PostMapping註釋始終返回201,而不使用ResponseEntity或ResponseStatus註釋。 –

+0

您可以嘗試使用'@ ControllerAdvice',但我不確定它是否會解決您的問題 – Tom

回答

0

您可以使用ResponseEntity設置每個方法的HTTP響應 例子:

ResponseEntity.status(status); 

你可以給從控制器的方法,你與它

0

您可以返回ResponseEntity每個方法的狀態作爲您的地圖響應

示例代碼如下:

@GetMapping("/get") 
public @ResponseBody ResponseEntity<String> get() { 
    return new ResponseEntity<String>("GET Response", HttpStatus.OK); 
} 

您可以在@DeleteMapping@PutMapping等中使用相同的機制。

+0

嗨,@Zico。說明可能有問題。我知道如何通過返回ResponseEntity返回狀態碼或使用ResponseStatus註解。我想要的是是否有配置方法,使PostMapping始終返回201沒有ResponseEntity或ResponseStatus註釋。謝謝。 –

相關問題