Class WebSessionServerRequestCache
- java.lang.Object
-
- org.springframework.security.web.server.savedrequest.WebSessionServerRequestCache
-
- All Implemented Interfaces:
ServerRequestCache
public class WebSessionServerRequestCache extends java.lang.Object implements ServerRequestCache
An implementation ofServerRequestCache
that saves theServerHttpRequest
in theWebSession
. The current implementation only saves the URL that was requested.- Since:
- 5.0
-
-
Constructor Summary
Constructors Constructor Description WebSessionServerRequestCache()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description reactor.core.publisher.Mono<java.net.URI>
getRedirectUri(org.springframework.web.server.ServerWebExchange exchange)
Get the URI that can be redirected to trigger the saved request to be usedreactor.core.publisher.Mono<org.springframework.http.server.reactive.ServerHttpRequest>
removeMatchingRequest(org.springframework.web.server.ServerWebExchange exchange)
If the providedServerWebExchange
matches the savedServerHttpRequest
gets the savedServerHttpRequest
reactor.core.publisher.Mono<java.lang.Void>
saveRequest(org.springframework.web.server.ServerWebExchange exchange)
Save theServerHttpRequest
void
setMatchingRequestParameterName(java.lang.String matchingRequestParameterName)
Specify the name of a query parameter that is added to the URL ingetRedirectUri(ServerWebExchange)
and is required forremoveMatchingRequest(ServerWebExchange)
to look up theServerHttpRequest
.void
setSaveRequestMatcher(ServerWebExchangeMatcher saveRequestMatcher)
Sets the matcher to determine if the request should be saved.
-
-
-
Method Detail
-
setSaveRequestMatcher
public void setSaveRequestMatcher(ServerWebExchangeMatcher saveRequestMatcher)
Sets the matcher to determine if the request should be saved. The default is to match on any GET request.- Parameters:
saveRequestMatcher
-
-
saveRequest
public reactor.core.publisher.Mono<java.lang.Void> saveRequest(org.springframework.web.server.ServerWebExchange exchange)
Description copied from interface:ServerRequestCache
Save theServerHttpRequest
- Specified by:
saveRequest
in interfaceServerRequestCache
- Parameters:
exchange
- the exchange to save- Returns:
- Return a
Mono<Void>
which only replays complete and error signals from thisMono
.
-
getRedirectUri
public reactor.core.publisher.Mono<java.net.URI> getRedirectUri(org.springframework.web.server.ServerWebExchange exchange)
Description copied from interface:ServerRequestCache
Get the URI that can be redirected to trigger the saved request to be used- Specified by:
getRedirectUri
in interfaceServerRequestCache
- Parameters:
exchange
- the exchange to obtain the savedServerHttpRequest
from- Returns:
- the URI that can be redirected to trigger the saved request to be used
-
removeMatchingRequest
public reactor.core.publisher.Mono<org.springframework.http.server.reactive.ServerHttpRequest> removeMatchingRequest(org.springframework.web.server.ServerWebExchange exchange)
Description copied from interface:ServerRequestCache
If the providedServerWebExchange
matches the savedServerHttpRequest
gets the savedServerHttpRequest
- Specified by:
removeMatchingRequest
in interfaceServerRequestCache
- Parameters:
exchange
- the exchange to obtain the request from- Returns:
- the
ServerHttpRequest
-
setMatchingRequestParameterName
public void setMatchingRequestParameterName(java.lang.String matchingRequestParameterName)
Specify the name of a query parameter that is added to the URL ingetRedirectUri(ServerWebExchange)
and is required forremoveMatchingRequest(ServerWebExchange)
to look up theServerHttpRequest
.- Parameters:
matchingRequestParameterName
- the parameter name that must be in the request forremoveMatchingRequest(ServerWebExchange)
to check the session.
-
-