@Override public MultiValueMap<String, HttpCookie> cookies() { return request().getCookies(); }
@Override public MultiValueMap<String, HttpCookie> getCookies() { return getDelegate().getCookies(); }
@Override public List<String> resolveSessionIds(ServerWebExchange exchange) { MultiValueMap<String, HttpCookie> cookieMap = exchange.getRequest().getCookies(); List<HttpCookie> cookies = cookieMap.get(getCookieName()); if (cookies == null) { return Collections.emptyList(); } return cookies.stream().map(HttpCookie::getValue).collect(Collectors.toList()); }
@Override public MultiValueMap<String, HttpCookie> getCookies() { return getDelegate().getCookies(); }
public DefaultServerHttpRequestBuilder(ServerHttpRequest original) { Assert.notNull(original, "ServerHttpRequest is required"); this.uri = original.getURI(); this.httpMethodValue = original.getMethodValue(); this.body = original.getBody(); this.httpHeaders = HttpHeaders.writableHttpHeaders(original.getHeaders()); this.cookies = new LinkedMultiValueMap<>(original.getCookies().size()); copyMultiValueMap(original.getCookies(), this.cookies); this.originalRequest = original; }
@Override public MultiValueMap<String, HttpCookie> cookies() { return request().getCookies(); }
@Override public List<String> resolveSessionIds(ServerWebExchange exchange) { MultiValueMap<String, HttpCookie> cookieMap = exchange.getRequest().getCookies(); List<HttpCookie> cookies = cookieMap.get(getCookieName()); if (cookies == null) { return Collections.emptyList(); } return cookies.stream().map(HttpCookie::getValue).collect(Collectors.toList()); }
@Override protected Object resolveNamedValue(String name, MethodParameter parameter, ServerWebExchange exchange) { HttpCookie cookie = exchange.getRequest().getCookies().getFirst(name); Class<?> paramType = parameter.getNestedParameterType(); if (HttpCookie.class.isAssignableFrom(paramType)) { return cookie; } return (cookie != null ? cookie.getValue() : null); }
public DefaultServerHttpRequestBuilder(ServerHttpRequest original) { Assert.notNull(original, "ServerHttpRequest is required"); this.uri = original.getURI(); this.httpMethodValue = original.getMethodValue(); this.body = original.getBody(); this.httpHeaders = HttpHeaders.writableHttpHeaders(original.getHeaders()); this.cookies = new LinkedMultiValueMap<>(original.getCookies().size()); copyMultiValueMap(original.getCookies(), this.cookies); this.originalRequest = original; }
@Override public Predicate<ServerWebExchange> apply(Config config) { return exchange -> { List<HttpCookie> cookies = exchange.getRequest().getCookies().get(config.name); if (cookies == null) { return false; } for (HttpCookie cookie : cookies) { if (cookie.getValue().matches(config.regexp)) { return true; } } return false; }; }
@Bean ServerAuthenticationConverter bearerTokenAuthenticationConverter() { return exchange -> Mono.justOrEmpty(exchange.getRequest().getCookies().getFirst("TOKEN").getValue()) .map(BearerTokenAuthenticationToken::new); } }
@Override public Mono<Void> handle(ServerHttpRequest request, ServerHttpResponse response) { this.requestCookies = request.getCookies(); this.requestCookies.size(); // Cause lazy loading response.getCookies().add("SID", ResponseCookie.from("SID", "31d4d96e407aad42") .path("/").secure(true).httpOnly(true).build()); response.getCookies().add("lang", ResponseCookie.from("lang", "en-US") .domain("example.com").path("/").build()); return response.setComplete(); } }
@SuppressWarnings(UNCHECKED) private EvaluationContext buildEvaluationContext(RequestEntity<?> httpEntity, ServerWebExchange exchange) { ServerHttpRequest request = exchange.getRequest(); HttpHeaders requestHeaders = request.getHeaders(); MultiValueMap<String, String> requestParams = request.getQueryParams(); Map<String, Object> exchangeAttributes = exchange.getAttributes(); StandardEvaluationContext evaluationContext = createEvaluationContext(); evaluationContext.setVariable("requestAttributes", exchangeAttributes); evaluationContext.setVariable("requestParams", requestParams); evaluationContext.setVariable("requestHeaders", requestHeaders); if (!CollectionUtils.isEmpty(request.getCookies())) { evaluationContext.setVariable("cookies", request.getCookies()); } Map<String, String> pathVariables = (Map<String, String>) exchangeAttributes.get(HandlerMapping.URI_TEMPLATE_VARIABLES_ATTRIBUTE); if (!CollectionUtils.isEmpty(pathVariables)) { evaluationContext.setVariable("pathVariables", pathVariables); } Map<String, MultiValueMap<String, String>> matrixVariables = (Map<String, MultiValueMap<String, String>>) exchangeAttributes .get(HandlerMapping.MATRIX_VARIABLES_ATTRIBUTE); if (!CollectionUtils.isEmpty(matrixVariables)) { evaluationContext.setVariable("matrixVariables", matrixVariables); } evaluationContext.setRootObject(httpEntity); return evaluationContext; }
@Override public MultiValueMap<String, HttpCookie> getCookies() { return getDelegate().getCookies(); }
@Override public MultiValueMap<String, HttpCookie> getCookies() { return getDelegate().getCookies(); }
@Override public List<String> resolveSessionIds(ServerWebExchange exchange) { MultiValueMap<String, HttpCookie> cookieMap = exchange.getRequest().getCookies(); List<HttpCookie> cookies = cookieMap.get(getCookieName()); if (cookies == null) { return Collections.emptyList(); } return cookies.stream().map(HttpCookie::getValue).collect(Collectors.toList()); }
@Override protected Optional<Object> resolveNamedValue(String name, MethodParameter parameter, ServerWebExchange exchange) { HttpCookie cookie = exchange.getRequest().getCookies().getFirst(name); Class<?> paramType = parameter.getNestedParameterType(); if (HttpCookie.class.isAssignableFrom(paramType)) { return Optional.ofNullable(cookie); } else if (cookie != null) { return Optional.ofNullable(cookie.getValue()); } else { return Optional.empty(); } }
public DefaultServerHttpRequestBuilder(ServerHttpRequest original) { Assert.notNull(original, "ServerHttpRequest is required"); this.uri = original.getURI(); this.httpMethodValue = original.getMethodValue(); this.body = original.getBody(); this.httpHeaders = HttpHeaders.writableHttpHeaders(original.getHeaders()); this.cookies = new LinkedMultiValueMap<>(original.getCookies().size()); copyMultiValueMap(original.getCookies(), this.cookies); this.originalRequest = original; }
public DefaultServerHttpRequestBuilder(ServerHttpRequest original) { Assert.notNull(original, "ServerHttpRequest is required"); this.uri = original.getURI(); this.httpMethodValue = original.getMethodValue(); this.body = original.getBody(); this.httpHeaders = new HttpHeaders(); copyMultiValueMap(original.getHeaders(), this.httpHeaders); this.cookies = new LinkedMultiValueMap<>(original.getCookies().size()); copyMultiValueMap(original.getCookies(), this.cookies); this.originalRequest = original; }
@Override public Mono<CsrfToken> loadToken(ServerWebExchange exchange) { return Mono.fromCallable(() -> { HttpCookie csrfCookie = exchange.getRequest().getCookies().getFirst(this.cookieName); if ((csrfCookie == null) || !StringUtils.hasText(csrfCookie.getValue())) { return null; } return createCsrfToken(csrfCookie.getValue()); }); }