インターフェース RequestBodyAdvice

すべての既知の実装クラス:
JsonViewRequestBodyAdviceRequestBodyAdviceAdapter

public interface RequestBodyAdvice
ボディが読み取られてオブジェクトに変換される前にリクエストをカスタマイズできます。また、@RequestBody または HttpEntity メソッドの引数としてコントローラーメソッドに渡される前に、結果のオブジェクトを処理できます。

この契約の実装は、RequestMappingHandlerAdapter に直接登録されるか、@ControllerAdvice でアノテーションが付けられている可能性が高く、その場合は自動検出されます。

導入:
4.2
作成者:
Rossen Stoyanchev
  • メソッドの詳細

    • supports

      boolean supports(MethodParameter methodParameter, TypeSE targetType, ClassSE<? extends HttpMessageConverter<?>> converterType)
      このインターセプターが適用されるかどうかを判別するために最初に呼び出されます。
      パラメーター:
      methodParameter - メソッドパラメーター
      targetType - ターゲットの型。必ずしもメソッドのパラメーターの型と同じではありません。HttpEntity<String> の場合。
      converterType - 選択したコンバーター型
      戻り値:
      このインターセプターを呼び出すかどうか
    • beforeBodyRead

      HttpInputMessage beforeBodyRead(HttpInputMessage inputMessage, MethodParameter parameter, TypeSE targetType, ClassSE<? extends HttpMessageConverter<?>> converterType) throws IOExceptionSE
      リクエスト本文が読み取られて変換される前に 2 番目に呼び出されます。
      パラメーター:
      inputMessage - リクエスト
      parameter - ターゲットメソッドのパラメーター
      targetType - ターゲットの型。必ずしもメソッドのパラメーターの型と同じではありません。HttpEntity<String> の場合。
      converterType - 本体の逆直列化に使用されるコンバーター
      戻り値:
      入力リクエストまたは新しいインスタンス (非 null)
      例外:
      IOExceptionSE
    • afterBodyRead

      ObjectSE afterBodyRead(ObjectSE body, HttpInputMessage inputMessage, MethodParameter parameter, TypeSE targetType, ClassSE<? extends HttpMessageConverter<?>> converterType)
      リクエスト本文がオブジェクトに変換された後、3 番目(および最後)に呼び出されます。
      パラメーター:
      body - 最初のアドバイスが呼び出される前にコンバーターオブジェクトに設定されます
      inputMessage - リクエスト
      parameter - ターゲットメソッドのパラメーター
      targetType - ターゲットの型。必ずしもメソッドのパラメーターの型と同じではありません。HttpEntity<String> の場合。
      converterType - 本体の逆直列化に使用されるコンバーター
      戻り値:
      同じ本体または新しいインスタンス
    • handleEmptyBody

      @Nullable ObjectSE handleEmptyBody(@Nullable ObjectSE body, HttpInputMessage inputMessage, MethodParameter parameter, TypeSE targetType, ClassSE<? extends HttpMessageConverter<?>> converterType)
      ボディが空の場合、2 番目(および最後)に呼び出されます。
      パラメーター:
      body - 通常、最初のアドバイスが呼び出される前に null に設定されます
      inputMessage - リクエスト
      parameter - メソッドパラメーター
      targetType - ターゲットの型。必ずしもメソッドのパラメーターの型と同じではありません。HttpEntity<String> の場合。
      converterType - 選択したコンバーター型
      戻り値:
      使用する値、または引数が必要な場合に HttpMessageNotReadableException を発生させる可能性のある null