クラス DefaultPartHttpMessageReader
java.lang.ObjectSE
org.springframework.http.codec.LoggingCodecSupport
org.springframework.http.codec.multipart.DefaultPartHttpMessageReader
- 実装されているすべてのインターフェース:
- HttpMessageReader<Part>
public class DefaultPartHttpMessageReader
extends LoggingCodecSupport
implements HttpMessageReader<Part>
Part のストリームへの "multipart/form-data" リクエストを解析するためのデフォルトの HttpMessageReader。 デフォルトの非ストリーミングモードでは、このメッセージリーダーは maxInMemorySize より小さい部分の内容をメモリに保存し、それより大きい部分の内容を fileStorageDirectory の一時ファイルに保存します。
 このリーダーは、すべてのパーツをマップに集約するために MultipartHttpMessageReader に提供できます。
- 導入:
- 5.3
- 作成者:
- Arjen Poutsma
- フィールドのサマリー- クラス org.springframework.http.codec.LoggingCodecSupport から継承されたフィールド- logger
- コンストラクターの概要コンストラクター
- メソッドのサマリー修飾子と型メソッド説明- boolean- canRead- (ResolvableType elementType, MediaType mediaType) 指定されたオブジェクト型がこのリーダーでサポートされているかどうか。- int- configuredの最大メモリ内サイズを取得します。このリーダーでサポートされているメディア型のリストを返します。- reactor.core.publisher.Flux<Part>- read- (ResolvableType elementType, ReactiveHttpInputMessage message, MapSE<StringSE, - ObjectSE> hints) 入力メッセージから読み取り、オブジェクトのストリームにデコードします。- reactor.core.publisher.Mono<Part>- readMono- (ResolvableType elementType, ReactiveHttpInputMessage message, MapSE<StringSE, - ObjectSE> hints) 入力メッセージから読み取り、単一のオブジェクトにデコードします。- void- setBlockingOperationScheduler- (reactor.core.scheduler.Scheduler blockingOperationScheduler) ファイルとディレクトリの作成、およびファイルへの書き込みに使用する Reactor- Schedulerを設定します。- void- setFileStorageDirectory- (PathSE fileStorageDirectory) - maxInMemorySizeより大きいパーツを保存するために使用するディレクトリを設定します。- void- setHeadersCharset- (CharsetSE headersCharset) ヘッダーのデコードに使用する文字セットを設定します。- void- setMaxDiskUsagePerPart- (long maxDiskUsagePerPart) ファイルパーツに許可される最大ディスク容量を設定します。- void- setMaxHeadersSize- (int byteCount) 各パーツのヘッダーセクションごとに許可されるメモリの最大量を構成します。- void- setMaxInMemorySize- (int maxInMemorySize) パーツごとに許可されるメモリの最大量を構成します。- void- setMaxParts- (int maxParts) 特定のマルチパートリクエストで許可されるパーツの最大数を指定します。- クラス org.springframework.http.codec.LoggingCodecSupport から継承されたメソッド- isEnableLoggingRequestDetails, setEnableLoggingRequestDetails- クラス java.lang.ObjectSE から継承されたメソッド- clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE- インターフェース org.springframework.http.codec.HttpMessageReader から継承されたメソッド- getReadableMediaTypes, read, readMono
- コンストラクターの詳細- DefaultPartHttpMessageReaderpublic DefaultPartHttpMessageReader()
 
- メソッドの詳細- setMaxHeadersSizepublic void setMaxHeadersSize- (int byteCount) 各パーツのヘッダーセクションごとに許可されるメモリの最大量を構成します。限界のとき- パラメーター:
- byteCount- ヘッダーの最大メモリ量
 
- getMaxInMemorySizepublic int getMaxInMemorySize()- configuredの最大メモリ内サイズを取得します。
- setMaxInMemorySizepublic void setMaxInMemorySize- (int maxInMemorySize) パーツごとに許可されるメモリの最大量を構成します。制限を超えた場合:- ファイル部分は一時ファイルに書き込まれます。
- 非ファイル部分は DataBufferLimitExceptionで拒否されます。
 - デフォルトでは、これは 256K に設定されています。 - パラメーター:
- maxInMemorySize- バイト単位のメモリ内制限。-1 に設定すると、コンテンツ全体がメモリに保存されます
 
- setMaxDiskUsagePerPartpublic void setMaxDiskUsagePerPart- (long maxDiskUsagePerPart) ファイルパーツに許可される最大ディスク容量を設定します。- デフォルトでは、これは -1 に設定されています。これは、最大値がないことを意味します。 - maxInMemorySizeが -1 に設定されている場合、このプロパティは無視されることに注意してください。
- setMaxPartspublic void setMaxParts- (int maxParts) 特定のマルチパートリクエストで許可されるパーツの最大数を指定します。- デフォルトでは、これは -1 に設定されています。これは、最大値がないことを意味します。 
- setFileStorageDirectory- maxInMemorySizeより大きいパーツを保存するために使用するディレクトリを設定します。デフォルトでは、- spring-webflux-multipartという名前のディレクトリがシステム一時ディレクトリに作成されます。- maxInMemorySizeが -1 に設定されている場合、このプロパティは無視されることに注意してください。- 例外:
- IOExceptionSE- I/O エラーが発生した場合、または親ディレクトリが存在しない場合
 
- setBlockingOperationSchedulerpublic void setBlockingOperationScheduler- (reactor.core.scheduler.Scheduler blockingOperationScheduler) ファイルとディレクトリの作成、およびファイルへの書き込みに使用する Reactor- Schedulerを設定します。デフォルトでは- Schedulers.boundedElastic()が使用されますが、このプロパティを使用すると、外部で管理されるスケジューラに変更できます。- maxInMemorySizeが -1 に設定されている場合、このプロパティは無視されることに注意してください。- 関連事項:
- Schedulers.boundedElastic()
 
 
- setHeadersCharsetヘッダーのデコードに使用する文字セットを設定します。RFC 7578 に従い、デフォルトは UTF-8 です。- パラメーター:
- headersCharset- ヘッダーのデコードに使用する文字セット
- 導入:
- 5.3.6
- 関連事項:
 
- getReadableMediaTypesインターフェースからコピーされた説明:- HttpMessageReaderこのリーダーでサポートされているメディア型のリストを返します。このリストは、考えられるすべてのターゲット要素型に適用されるとは限らないため、このメソッドの呼び出しは通常、- canWrite(elementType, null)を介して保護する必要があります。このリストでは、特定の要素型でのみサポートされているメディア型を除外することもできます。または、- HttpMessageReader.getReadableMediaTypes(ResolvableType)を使用してより正確なリストを作成します。- 次で指定:
-  インターフェース HttpMessageReader<Part>のgetReadableMediaTypes
- 戻り値:
- サポートされているメディア型の一般的なリスト
 
- canReadインターフェースからコピーされた説明:- HttpMessageReader指定されたオブジェクト型がこのリーダーでサポートされているかどうか。- 次で指定:
-  インターフェース HttpMessageReader<Part>のcanRead
- パラメーター:
- elementType- チェックするオブジェクトの型
- mediaType- 読み取り用のメディア型 (おそらく- null)
- 戻り値:
-  読み取り可能な場合は true、そうでない場合はfalse
 
- readMonopublic reactor.core.publisher.Mono<Part> readMono- (ResolvableType elementType, ReactiveHttpInputMessage message, MapSE<StringSE, - ObjectSE> hints) インターフェースからコピーされた説明:- HttpMessageReader入力メッセージから読み取り、単一のオブジェクトにデコードします。- 次で指定:
-  インターフェース HttpMessageReader<Part>のreadMono
- パラメーター:
- elementType-- HttpMessageReader.canRead(ResolvableType, MediaType)を介して事前にチェックされている必要があるストリーム内のオブジェクトの型
- message- 読み取るメッセージ
- hints- 入力の読み取りおよびデコード方法に関する追加情報
- 戻り値:
- デコードされたオブジェクト
 
- readpublic reactor.core.publisher.Flux<Part> read- (ResolvableType elementType, ReactiveHttpInputMessage message, MapSE<StringSE, - ObjectSE> hints) インターフェースからコピーされた説明:- HttpMessageReader入力メッセージから読み取り、オブジェクトのストリームにデコードします。- 次で指定:
-  インターフェース HttpMessageReader<Part>のread
- パラメーター:
- elementType-- HttpMessageReader.canRead(ResolvableType, MediaType)を介して事前にチェックされている必要があるストリーム内のオブジェクトの型
- message- 読み取るメッセージ
- hints- 入力の読み取りおよびデコード方法に関する追加情報
- 戻り値:
- 要素のデコードされたストリーム