public class FormHttpMessageWriter extends LoggingCodecSupport implements HttpMessageWriter<MultiValueMap<java.lang.String,java.lang.String>>
MultiValueMap<String, String>
を HTML フォームデータ、つまり "application/x-www-form-urlencoded"
としてリクエストの本文に書き込むための HttpMessageWriter
。 メディア型が明示的に MediaType.APPLICATION_FORM_URLENCODED
に設定されていない限り、canWrite(org.springframework.core.ResolvableType, org.springframework.http.MediaType)
メソッドは、ターゲットマップに文字列値があることを確認するためにジェネリクス型情報を必要とすることに注意してください。これは、文字列以外の値を持つ MultiValueMap を使用してマルチパートリクエストを書き込むことができるためです。
フォームデータとマルチパートリクエストの両方をサポートするには、このライターで構成された MultipartHttpMessageWriter
をプレーンフォームデータを書き込むためのフォールバックとして使用することを検討してください。
MultipartHttpMessageWriter
修飾子と型 | フィールドと説明 |
---|---|
static java.nio.charset.Charset | DEFAULT_CHARSET ライターが使用するデフォルトの文字セット。 |
logger
コンストラクターと説明 |
---|
FormHttpMessageWriter() |
修飾子と型 | メソッドと説明 |
---|---|
boolean | canWrite(ResolvableType elementType, MediaType mediaType) 指定されたオブジェクト型がこのライターでサポートされているかどうか。 |
java.nio.charset.Charset | getDefaultCharset() 設定されたデフォルトの文字セットを返します。 |
java.util.List<MediaType> | getWritableMediaTypes() このライターがサポートする MediaType を返します。 |
protected java.lang.String | serializeForm(MultiValueMap<java.lang.String,java.lang.String> formData, java.nio.charset.Charset charset) |
void | setDefaultCharset(java.nio.charset.Charset charset) レスポンスの Content-Type ヘッダーで明示的に指定されていない場合に、フォームデータの書き込みに使用するデフォルトの文字セットを設定します。 |
reactor.core.publisher.Mono<java.lang.Void> | write(org.reactivestreams.Publisher<? extends MultiValueMap<java.lang.String,java.lang.String>> inputStream, ResolvableType elementType, MediaType mediaType, ReactiveHttpOutputMessage message, java.util.Map<java.lang.String,java.lang.Object> hints) オブジェクトの特定のストリームを出力メッセージに書き込みます。 |
isEnableLoggingRequestDetails, setEnableLoggingRequestDetails
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
write
public static final java.nio.charset.Charset DEFAULT_CHARSET
public void setDefaultCharset(java.nio.charset.Charset charset)
デフォルトでは、これは "UTF-8" に設定されています。
public java.nio.charset.Charset getDefaultCharset()
public java.util.List<MediaType> getWritableMediaTypes()
HttpMessageWriter
MediaType
を返します。HttpMessageWriter<MultiValueMap<java.lang.String,java.lang.String>>
の getWritableMediaTypes
public boolean canWrite(ResolvableType elementType, @Nullable MediaType mediaType)
HttpMessageWriter
HttpMessageWriter<MultiValueMap<java.lang.String,java.lang.String>>
の canWrite
elementType
- チェックするオブジェクトの型 mediaType
- 書き込み用のメディア型、おそらく null
true
、それ以外の場合は false
public reactor.core.publisher.Mono<java.lang.Void> write(org.reactivestreams.Publisher<? extends MultiValueMap<java.lang.String,java.lang.String>> inputStream, ResolvableType elementType, @Nullable MediaType mediaType, ReactiveHttpOutputMessage message, java.util.Map<java.lang.String,java.lang.Object> hints)
HttpMessageWriter
HttpMessageWriter<MultiValueMap<java.lang.String,java.lang.String>>
の write
inputStream
- 書き込むオブジェクト elementType
- HttpMessageWriter.canWrite(ResolvableType, MediaType)
を介して事前にチェックされている必要があるストリーム内のオブジェクトの型 mediaType
- 書き込みのコンテンツ型。null
の場合は、ライターのデフォルトのコンテンツ型を使用する必要があることを示します。message
- 書き込むメッセージ hints
- エンコードおよび書き込み方法に関する追加情報 protected java.lang.String serializeForm(MultiValueMap<java.lang.String,java.lang.String> formData, java.nio.charset.Charset charset)