public class ServerRequestWrapper extends ObjectSE implements ServerRequest
handler filter function
のリクエストを適応させるためにサブクラス化できる ServerRequest
インターフェースの実装。すべてのメソッドは、デフォルトでラップされたリクエストを呼び出すように設定されています。修飾子と型 | クラスと説明 |
---|---|
static class | ServerRequestWrapper.HeadersWrapper handler filter function のヘッダーを適応させるためにサブクラス化できる Headers インターフェースの実装。 |
ServerRequest.Builder, ServerRequest.Headers
コンストラクターと説明 |
---|
ServerRequestWrapper(ServerRequest delegate) 指定されたリクエストをラップする新しい ServerRequestWrapper を作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
OptionalSE<ObjectSE> | attribute(StringSE name) リクエスト属性値が存在する場合は取得します。 |
MapSE<StringSE, ObjectSE> | attributes() リクエスト属性の可変マップを取得します。 |
<T> T | body(BodyExtractor<T,? super ServerHttpRequest> extractor) 指定された BodyExtractor で本体を抽出します。 |
<T> T | body(BodyExtractor<T,? super ServerHttpRequest> extractor, MapSE<StringSE, ObjectSE> hints) 指定された BodyExtractor とヒントを使用してボディを抽出します。 |
<T> reactor.core.publisher.Flux<T> | bodyToFlux(ClassSE<? extends T> elementClass) 本体を Flux に抽出します。 |
<T> reactor.core.publisher.Flux<T> | bodyToFlux(ParameterizedTypeReference<T> typeReference) 本体を Flux に抽出します。 |
<T> reactor.core.publisher.Mono<T> | bodyToMono(ClassSE<? extends T> elementClass) 本体を Mono に抽出します。 |
<T> reactor.core.publisher.Mono<T> | bodyToMono(ParameterizedTypeReference<T> typeReference) 本体を Mono に抽出します。 |
MultiValueMap<StringSE, HttpCookie> | cookies() このリクエストの Cookie を取得します。 |
ServerWebExchange | exchange() このリクエストのベースとなる Web エクスチェンジを取得します。 |
reactor.core.publisher.Mono<MultiValueMap<StringSE, StringSE>> | formData() Content-Type が "application/x-www-form-urlencoded" の場合はリクエストの本文からフォームデータを取得し、それ以外の場合は空のマップを取得します。 |
ServerRequest.Headers | headers() このリクエストのヘッダーを取得します。 |
OptionalSE<InetSocketAddressSE> | localAddress() このリクエストが接続されているローカルアドレスを取得します(利用可能な場合)。 |
ListSE<HttpMessageReader<?>> | messageReaders() このリクエストの本文の変換に使用されるリーダーを取得します。 |
HttpMethod | method() HTTP メソッドを取得します。 |
StringSE | methodName() HTTP メソッドの名前を取得します。 |
reactor.core.publisher.Mono<MultiValueMap<StringSE, Part>> | multipartData() Content-Type が "multipart/form-data" の場合はマルチパートリクエストのパーツを取得し、それ以外の場合は空のマップを取得します。 |
StringSE | path() リクエストパスを取得します。 |
PathContainer | pathContainer() 使用すべきではありません。 |
StringSE | pathVariable(StringSE name) 指定された名前のパス変数があれば、それを取得します。 |
MapSE<StringSE, StringSE> | pathVariables() このリクエストのすべてのパス変数を取得します。 |
reactor.core.publisher.Mono<? extends PrincipalSE> | principal() リクエストに対して認証されたユーザーを取得します(存在する場合)。 |
OptionalSE<StringSE> | queryParam(StringSE name) 存在する場合、指定された名前を持つ最初のクエリパラメーターを取得します。 |
MultiValueMap<StringSE, StringSE> | queryParams() このリクエストのすべてのクエリパラメーターを取得します。 |
OptionalSE<InetSocketAddressSE> | remoteAddress() 可能な場合、このリクエストが接続されているリモートアドレスを取得します。 |
ServerRequest | request() ラップされたリクエストを返します。 |
RequestPath | requestPath() リクエストパスを PathContainer として取得します。 |
reactor.core.publisher.Mono<WebSession> | session() このリクエストの Web セッションを取得します。 |
URISE | uri() リクエスト URI を取得します。 |
UriBuilder | uriBuilder() この ServerRequest に関連付けられた URI から UriBuilderComponents を取得します。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
checkNotModified, checkNotModified, checkNotModified, create, from
public ServerRequestWrapper(ServerRequest delegate)
ServerRequestWrapper
を作成します。delegate
- ラップするリクエスト public ServerRequest request()
public HttpMethod method()
ServerRequest
ServerRequest
の method
null
(たとえば非標準の HTTP メソッドの場合)public StringSE methodName()
ServerRequest
ServerRequest
の methodName
public URISE uri()
ServerRequest
ServerRequest
の uri
public UriBuilder uriBuilder()
ServerRequest
ServerRequest
に関連付けられた URI から UriBuilderComponents
を取得します。 注意 : 5.1 以降、このメソッドは、クライアントが発信したアドレスを指定する "Forwarded"
および "X-Forwarded-*"
ヘッダーを無視します。ForwardedHeaderFilter
を使用して、このようなヘッダーを抽出して使用するか、破棄することを検討してください。
ServerRequest
の uriBuilder
public StringSE path()
ServerRequest
ServerRequest
の path
@DeprecatedSE public PathContainer pathContainer()
ServerRequest
PathContainer
として取得します。ServerRequest
の pathContainer
public RequestPath requestPath()
ServerRequest
PathContainer
として取得します。ServerRequest
の requestPath
public ServerRequest.Headers headers()
ServerRequest
ServerRequest
の headers
public MultiValueMap<StringSE,HttpCookie> cookies()
ServerRequest
ServerRequest
の cookies
public OptionalSE<InetSocketAddressSE> remoteAddress()
ServerRequest
ServerRequest
の remoteAddress
public OptionalSE<InetSocketAddressSE> localAddress()
ServerRequest
ServerRequest
の localAddress
public ListSE<HttpMessageReader<?>> messageReaders()
ServerRequest
ServerRequest
の messageReaders
public <T> T body(BodyExtractor<T,? super ServerHttpRequest> extractor)
ServerRequest
BodyExtractor
で本体を抽出します。ServerRequest
の body
T
- 返される本体の型 extractor
- リクエストから読み取る BodyExtractor
ServerRequest.body(BodyExtractor, Map)
public <T> T body(BodyExtractor<T,? super ServerHttpRequest> extractor, MapSE<StringSE,ObjectSE> hints)
ServerRequest
BodyExtractor
とヒントを使用してボディを抽出します。ServerRequest
の body
T
- 返される本体の型 extractor
- リクエストから読み取る BodyExtractor
hints
- ボディ抽出のカスタマイズに使用する Jackson2CodecSupport.JSON_VIEW_HINT
などのヒントのマップ public <T> reactor.core.publisher.Mono<T> bodyToMono(ClassSE<? extends T> elementClass)
ServerRequest
Mono
に抽出します。ServerRequest
の bodyToMono
T
- 要素型 elementClass
- Mono
の要素のクラス public <T> reactor.core.publisher.Mono<T> bodyToMono(ParameterizedTypeReference<T> typeReference)
ServerRequest
Mono
に抽出します。ServerRequest
の bodyToMono
T
- 要素型 typeReference
- 予期されるレスポンスリクエスト型を説明する型参照 T
の本体を含む mono public <T> reactor.core.publisher.Flux<T> bodyToFlux(ClassSE<? extends T> elementClass)
ServerRequest
Flux
に抽出します。ServerRequest
の bodyToFlux
T
- 要素型 elementClass
- Flux
の要素のクラス public <T> reactor.core.publisher.Flux<T> bodyToFlux(ParameterizedTypeReference<T> typeReference)
ServerRequest
Flux
に抽出します。ServerRequest
の bodyToFlux
T
- 要素型 typeReference
- 予想されるリクエスト本文の型を説明する型参照 T
の本体を含むフラックス public OptionalSE<ObjectSE> attribute(StringSE name)
ServerRequest
ServerRequest
の attribute
name
- 属性名 public MapSE<StringSE,ObjectSE> attributes()
ServerRequest
ServerRequest
の attributes
public OptionalSE<StringSE> queryParam(StringSE name)
ServerRequest
ServerRequest
の queryParam
name
- パラメーター名 public MultiValueMap<StringSE,StringSE> queryParams()
ServerRequest
ServerRequest
の queryParams
public StringSE pathVariable(StringSE name)
ServerRequest
ServerRequest
の pathVariable
name
- 変数名 public MapSE<StringSE,StringSE> pathVariables()
ServerRequest
ServerRequest
の pathVariables
public reactor.core.publisher.Mono<WebSession> session()
ServerRequest
クライアントからリクエストされたセッション ID と一致するか、クライアントがインスタンスを指定しなかったため、または基になるセッションが期限切れになったために新しいセッション ID でインスタンスを返すことが常に保証されています。
このメソッドを使用しても、セッションは自動的には作成されません。
ServerRequest
の session
public reactor.core.publisher.Mono<? extends PrincipalSE> principal()
ServerRequest
ServerRequest
の principal
public reactor.core.publisher.Mono<MultiValueMap<StringSE,StringSE>> formData()
ServerRequest
"application/x-www-form-urlencoded"
の場合はリクエストの本文からフォームデータを取得し、それ以外の場合は空のマップを取得します。 注意 : このメソッドを呼び出すと、リクエストの本文が完全に読み取られて解析され、結果の MultiValueMap
がキャッシュされるため、このメソッドを複数回呼び出しても安全です。
ServerRequest
の formData
public reactor.core.publisher.Mono<MultiValueMap<StringSE,Part>> multipartData()
ServerRequest
"multipart/form-data"
の場合はマルチパートリクエストのパーツを取得し、それ以外の場合は空のマップを取得します。 注意 : このメソッドを呼び出すと、リクエストの本文が完全に読み取られて解析され、結果の MultiValueMap
がキャッシュされるため、このメソッドを複数回呼び出しても安全です。
ServerRequest
の multipartData
public ServerWebExchange exchange()
ServerRequest
メモ: (ServerRequest
および ServerResponse
で提供されるメソッドを使用する代わりに)交換を直接操作すると、不規則な結果が生じる可能性があります。
ServerRequest
の exchange