クラス ContentNegotiationManager
java.lang.ObjectSE
org.springframework.web.accept.ContentNegotiationManager
- 実装されたすべてのインターフェース:
ContentNegotiationStrategy
,MediaTypeFileExtensionResolver
public class ContentNegotiationManager
extends ObjectSE
implements ContentNegotiationStrategy, MediaTypeFileExtensionResolver
リクエストに対してリクエストされたメディア型を決定する主要クラス。これは、構成済みの
ContentNegotiationStrategy
インスタンスのリストに委譲することにより行われます。 また、メディア型のファイル拡張子を検索するメソッドも提供します。これは、構成済みの MediaTypeFileExtensionResolver
インスタンスのリストに委譲することにより行われます。
- 導入:
- 3.2
- 作成者:
- Rossen Stoyanchev, Juergen Hoeller
フィールドサマリー
インターフェース org.springframework.web.accept.ContentNegotiationStrategy から継承されたフィールド
MEDIA_TYPE_ALL_LIST
コンストラクターのサマリー
コンストラクター説明HeaderContentNegotiationStrategy
を使用してデフォルトのインスタンスを作成します。ContentNegotiationManager(ContentNegotiationStrategy...)
のコレクションベースの代替。ContentNegotiationManager
(ContentNegotiationStrategy... strategies) ContentNegotiationStrategy
ストラテジーの指定されたリストを使用してインスタンスを作成します。各ストラテジーはMediaTypeFileExtensionResolver
のインスタンスにもなります。方法の概要
修飾子と型メソッド説明void
addFileExtensionResolvers
(MediaTypeFileExtensionResolver... resolvers) 構築時に検出されたインスタンスに加えて、MediaTypeFileExtensionResolver
インスタンスをさらに登録します。登録されているすべてのファイル拡張子を取得します。MediaTypeFileExtensionResolver
を繰り返して、登録されているすべてのルックアップキーをメディア型マッピングに返します。設定されたコンテンツネゴシエーション戦略を返します。<T extends ContentNegotiationStrategy>
TgetStrategy
(ClassSE<T> strategyType) 指定された型のContentNegotiationStrategy
を見つけます。resolveFileExtensions
(MediaType mediaType) 指定されたメディア型をファイル拡張子のリストに解決します。resolveMediaTypes
(NativeWebRequest request) 指定されたリクエストをメディア型のリストに解決します。
コンストラクターの詳細
ContentNegotiationManager
ContentNegotiationStrategy
ストラテジーの指定されたリストを使用してインスタンスを作成します。各ストラテジーはMediaTypeFileExtensionResolver
のインスタンスにもなります。- パラメーター:
strategies
- 使用する戦略
ContentNegotiationManager
ContentNegotiationManager(ContentNegotiationStrategy...)
のコレクションベースの代替。- パラメーター:
strategies
- 使用する戦略- 導入:
- 3.2.2
ContentNegotiationManager
public ContentNegotiationManager()HeaderContentNegotiationStrategy
を使用してデフォルトのインスタンスを作成します。
メソッドの詳細
getStrategies
設定されたコンテンツネゴシエーション戦略を返します。- 導入:
- 3.2.16
getStrategy
指定された型のContentNegotiationStrategy
を見つけます。- パラメーター:
strategyType
- 戦略型- 戻り値:
- 最初のマッチング戦略、ない場合は
null
- 導入:
- 4.3
addFileExtensionResolvers
構築時に検出されたインスタンスに加えて、MediaTypeFileExtensionResolver
インスタンスをさらに登録します。- パラメーター:
resolvers
- 追加するリゾルバー
resolveMediaTypes
public ListSE<MediaType> resolveMediaTypes(NativeWebRequest request) throws HttpMediaTypeNotAcceptableException インターフェースからコピーされた説明:ContentNegotiationStrategy
指定されたリクエストをメディア型のリストに解決します。返されるリストは、最初に特異性、次に品質パラメーターの順に並べられます。- 次で指定:
- インターフェース
ContentNegotiationStrategy
のresolveMediaTypes
- パラメーター:
request
- 現在のリクエスト- 戻り値:
- リクエストされたメディア型、またはリクエストされなかった場合は
ContentNegotiationStrategy.MEDIA_TYPE_ALL_LIST
- 例外:
HttpMediaTypeNotAcceptableException
- リクエストされたメディア型を解析できない場合
resolveFileExtensions
インターフェースからコピーされた説明:MediaTypeFileExtensionResolver
指定されたメディア型をファイル拡張子のリストに解決します。- 次で指定:
- インターフェース
MediaTypeFileExtensionResolver
のresolveFileExtensions
- パラメーター:
mediaType
- 解決するメディア型- 戻り値:
- 拡張機能のリストまたは空のリスト (非
null
)
getAllFileExtensions
登録されているすべてのファイル拡張子を取得します。起動時に、このメソッドは
PathExtensionContentNegotiationStrategy
またはParameterContentNegotiationStrategy
で明示的に登録された拡張機能を返します。実行時に「パス拡張子」戦略があり、そのuseRegisteredExtensionsOnly
プロパティが "false" に設定されている場合、ファイル拡張子がMediaTypeFactory
を介して解決されキャッシュされるため、拡張子のリストが増加する場合があります。- 次で指定:
- インターフェース
MediaTypeFileExtensionResolver
のgetAllFileExtensions
- 戻り値:
- 拡張機能のリストまたは空のリスト (非
null
)
getMediaTypeMappings
MediaTypeFileExtensionResolver
を繰り返して、登録されているすべてのルックアップキーをメディア型マッピングに返します。- 導入:
- 5.2.4