public interface RequestBodyAdvice
@RequestBody
または HttpEntity
メソッドの引数としてコントローラーメソッドに渡される前に、結果のオブジェクトを処理できます。 この契約の実装は、RequestMappingHandlerAdapter
に直接登録されるか、@ControllerAdvice
でアノテーションが付けられている可能性が高く、その場合は自動検出されます。
修飾子と型 | メソッドと説明 |
---|---|
ObjectSE | afterBodyRead(ObjectSE body, HttpInputMessage inputMessage, MethodParameter parameter, TypeSE targetType, ClassSE<? extends HttpMessageConverter<?>> converterType) リクエスト本文がオブジェクトに変換された後、3 番目(および最後)に呼び出されます。 |
HttpInputMessage | beforeBodyRead(HttpInputMessage inputMessage, MethodParameter parameter, TypeSE targetType, ClassSE<? extends HttpMessageConverter<?>> converterType) リクエスト本文が読み取られて変換される前に 2 番目に呼び出されます。 |
ObjectSE | handleEmptyBody(ObjectSE body, HttpInputMessage inputMessage, MethodParameter parameter, TypeSE targetType, ClassSE<? extends HttpMessageConverter<?>> converterType) ボディが空の場合、2 番目(および最後)に呼び出されます。 |
boolean | supports(MethodParameter methodParameter, TypeSE targetType, ClassSE<? extends HttpMessageConverter<?>> converterType) このインターセプターが適用されるかどうかを判別するために最初に呼び出されます。 |
boolean supports(MethodParameter methodParameter, TypeSE targetType, ClassSE<? extends HttpMessageConverter<?>> converterType)
methodParameter
- メソッドパラメーター targetType
- ターゲットの型。必ずしもメソッドのパラメーターの型と同じではありません。HttpEntity<String>
の場合。converterType
- 選択したコンバーター型 HttpInputMessage beforeBodyRead(HttpInputMessage inputMessage, MethodParameter parameter, TypeSE targetType, ClassSE<? extends HttpMessageConverter<?>> converterType) throws IOExceptionSE
inputMessage
- リクエスト parameter
- ターゲットメソッドのパラメーター targetType
- ターゲットの型。必ずしもメソッドのパラメーターの型と同じではありません。HttpEntity<String>
の場合。converterType
- 本体の逆直列化に使用されるコンバーター null
)IOExceptionSE
ObjectSE afterBodyRead(ObjectSE body, HttpInputMessage inputMessage, MethodParameter parameter, TypeSE targetType, ClassSE<? extends HttpMessageConverter<?>> converterType)
body
- 最初のアドバイスが呼び出される前にコンバーターオブジェクトに設定されます inputMessage
- リクエスト parameter
- ターゲットメソッドのパラメーター targetType
- ターゲットの型。必ずしもメソッドのパラメーターの型と同じではありません。HttpEntity<String>
の場合。converterType
- 本体の逆直列化に使用されるコンバーター @Nullable ObjectSE handleEmptyBody(@Nullable ObjectSE body, HttpInputMessage inputMessage, MethodParameter parameter, TypeSE targetType, ClassSE<? extends HttpMessageConverter<?>> converterType)
body
- 通常、最初のアドバイスが呼び出される前に null
に設定されます inputMessage
- リクエスト parameter
- メソッドパラメーター targetType
- ターゲットの型。必ずしもメソッドのパラメーターの型と同じではありません。HttpEntity<String>
の場合。converterType
- 選択したコンバーター型 HttpMessageNotReadableException
を発生させる可能性のある null