public interface ServerWebExchange
| Modifier and Type | Interface and Description | 
|---|---|
| static interface  | ServerWebExchange.BuilderBuilder for mutating an existing  ServerWebExchange. | 
| Modifier and Type | Field and Description | 
|---|---|
| static String | LOG_ID_ATTRIBUTEName of  attributewhose value can be used to
 correlate log messages for this exchange. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | addUrlTransformer(Function<String,String> transformer)Register an additional URL transformation function for use with  transformUrl(java.lang.String). | 
| boolean | checkNotModified(Instant lastModified)An overloaded variant of  checkNotModified(String, Instant)with
 a last-modified timestamp only. | 
| boolean | checkNotModified(String etag)An overloaded variant of  checkNotModified(String, Instant)with
 anETag(entity tag) value only. | 
| boolean | checkNotModified(String etag,
                Instant lastModified)Check whether the requested resource has been modified given the supplied
  ETag(entity tag) and last-modified timestamp as determined by
 the application. | 
| ApplicationContext | getApplicationContext()Return the  ApplicationContextassociated with the web application,
 if it was initialized with one viaWebHttpHandlerBuilder.applicationContext(ApplicationContext). | 
| default <T> T | getAttribute(String name)Return the request attribute value if present. | 
| default <T> T | getAttributeOrDefault(String name,
                     T defaultValue)Return the request attribute value, or a default, fallback value. | 
| Map<String,Object> | getAttributes()Return a mutable map of request attributes for the current exchange. | 
| reactor.core.publisher.Mono<MultiValueMap<String,String>> | getFormData()Return the form data from the body of the request if the Content-Type is
  "application/x-www-form-urlencoded"or an empty map otherwise. | 
| LocaleContext | getLocaleContext()Return the  LocaleContextusing the configuredLocaleContextResolver. | 
| String | getLogPrefix()Return a log message prefix to use to correlate messages for this exchange. | 
| reactor.core.publisher.Mono<MultiValueMap<String,Part>> | getMultipartData()Return the parts of a multipart request if the Content-Type is
  "multipart/form-data"or an empty map otherwise. | 
| <T extends Principal> | getPrincipal()Return the authenticated user for the request, if any. | 
| ServerHttpRequest | getRequest()Return the current HTTP request. | 
| default <T> T | getRequiredAttribute(String name)Return the request attribute value or if not present raise an
  IllegalArgumentException. | 
| ServerHttpResponse | getResponse()Return the current HTTP response. | 
| reactor.core.publisher.Mono<WebSession> | getSession()Return the web session for the current request. | 
| boolean | isNotModified()Returns  trueif the one of thecheckNotModifiedmethods
 in this contract were used and they returned true. | 
| default ServerWebExchange.Builder | mutate()Return a builder to mutate properties of this exchange by wrapping it
 with  ServerWebExchangeDecoratorand returning either mutated
 values or delegating back to this instance. | 
| String | transformUrl(String url)Transform the given url according to the registered transformation function(s). | 
static final String LOG_ID_ATTRIBUTE
attribute whose value can be used to
 correlate log messages for this exchange. Use getLogPrefix() to
 obtain a consistently formatted prefix based on this attribute.getLogPrefix()ServerHttpRequest getRequest()
ServerHttpResponse getResponse()
Map<String,Object> getAttributes()
@Nullable default <T> T getAttribute(String name)
T - the attribute typename - the attribute namedefault <T> T getRequiredAttribute(String name)
IllegalArgumentException.T - the attribute typename - the attribute namedefault <T> T getAttributeOrDefault(String name, T defaultValue)
T - the attribute typename - the attribute namedefaultValue - a default value to return insteadreactor.core.publisher.Mono<WebSession> getSession()
WebSession
 for more details.<T extends Principal> reactor.core.publisher.Mono<T> getPrincipal()
reactor.core.publisher.Mono<MultiValueMap<String,String>> getFormData()
"application/x-www-form-urlencoded" or an empty map otherwise.
 Note: calling this method causes the request body to
 be read and parsed in full and the resulting MultiValueMap is
 cached so that this method is safe to call more than once.
reactor.core.publisher.Mono<MultiValueMap<String,Part>> getMultipartData()
"multipart/form-data" or an empty map otherwise.
 Note: calling this method causes the request body to
 be read and parsed in full and the resulting MultiValueMap is
 cached so that this method is safe to call more than once.
 
Note:the contents of each part is not cached, and can only be read once.
LocaleContext getLocaleContext()
LocaleContext using the configured
 LocaleContextResolver.@Nullable ApplicationContext getApplicationContext()
ApplicationContext associated with the web application,
 if it was initialized with one via
 WebHttpHandlerBuilder.applicationContext(ApplicationContext).WebHttpHandlerBuilder.applicationContext(ApplicationContext)boolean isNotModified()
true if the one of the checkNotModified methods
 in this contract were used and they returned true.boolean checkNotModified(Instant lastModified)
checkNotModified(String, Instant) with
 a last-modified timestamp only.lastModified - the last-modified timeboolean checkNotModified(String etag)
checkNotModified(String, Instant) with
 an ETag (entity tag) value only.etag - the entity tag for the underlying resource.boolean checkNotModified(@Nullable String etag, Instant lastModified)
ETag (entity tag) and last-modified timestamp as determined by
 the application. Also transparently prepares the response, setting HTTP
 status, and adding "ETag" and "Last-Modified" headers when applicable.
 This method works with conditional GET/HEAD requests as well as with
 conditional POST/PUT/DELETE requests.
 Note: The HTTP specification recommends setting both
 ETag and Last-Modified values, but you can also use
 #checkNotModified(String) or
 checkNotModified(Instant).
etag - the entity tag that the application determined for the
 underlying resource. This parameter will be padded with quotes (")
 if necessary.lastModified - the last-modified timestamp that the application
 determined for the underlying resourceString transformUrl(String url)
url, though additional
 transformation functions can by registered with addUrlTransformer(java.util.function.Function<java.lang.String, java.lang.String>)url - the URL to transformvoid addUrlTransformer(Function<String,String> transformer)
transformUrl(java.lang.String).
 The given function can be used to insert an id for authentication, a nonce for CSRF
 protection, etc.
 Note that the given function is applied after any previously registered functions.
transformer - a URL transformation function to addString getLogPrefix()
LOG_ID_ATTRIBUTE
 along with some extra formatting so that the prefix can be conveniently
 prepended with no further formatting no separators required.LOG_ID_ATTRIBUTE is not set.default ServerWebExchange.Builder mutate()
ServerWebExchangeDecorator and returning either mutated
 values or delegating back to this instance.