2017-07-19 4 views
0

@PostMappingを使用すると、アノテーションによってCREATED(201)の応答ステータスがまとめられます。 @DeleteMapping@PutMappingと同じです。RequestMappingをデフォルトのResponseStatusに設定できますか?

したがって、異なるrequestMappingでデフォルトの応答ステータスを設定する方法はありますか?

+0

[Stringを返すSpring MVC @ResponseBodyメソッドでのHTTP 400エラーの対応方法](https://stackoverflow.com/questions/16232833/how-to-respond-with-http-400-エラー - イン - スプリング - MVCの応答体メソッドreturnin) – Tom

+0

申し訳ありません申し訳ありませんが、何か説明に間違いがあります。 ResponseEntityを返すか、ResponseStatusアノテーションを使用してステータスコードを返す方法は分かっています。私が望むのは、何かを設定する方法があるかどうかです.PressMappingアノテーションは、ResponseEntityまたはResponseStatusアノテーションなしで常に201を返します。 –

+0

あなたは '@ ControllerAdvice'を使用しようとすることができますが、あなたの問題を解決するかどうかはわかりません。 – Tom

答えて

0

あなたは、各メソッドに 例をHTTPレスポンスを設定するResponseEntityを使用することができます:あなたはそれをメソッドごとに

0

を自分のステータスを与えることができ

ResponseEntity.status(status); 

あなたは、コントローラのメソッドからResponseEntityを返すことができますあなたのマッピングレスポンスとして

例コードは次のようになります。

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

同じメカニズムを@DeleteMapping,@PutMappingなどで使用できます。

+0

こんにちは、@Zico。多分、記述に間違いがあります。 ResponseEntityを返すか、ResponseStatusアノテーションを使用してステータスコードを返す方法は分かっています。私が望むのは、何かを設定する方法があるかどうかです.PressMappingは常にResponseEntityまたはResponseStatusアノテーションなしで201を返します。ありがとう。 –

関連する問題