@Test public void defaultRequest() { ThreadLocal<String> context = new NamedThreadLocal<>("foo"); Map<String, Object> actual = new HashMap<>(); ExchangeFilterFunction filter = (request, next) -> { actual.putAll(request.attributes()); return next.exchange(request); }; WebClient client = this.builder .defaultRequest(spec -> spec.attribute("foo", context.get())) .filter(filter) .build(); try { context.set("bar"); client.get().uri("/path").attribute("foo", "bar").exchange(); } finally { context.remove(); } assertEquals("bar", actual.get("foo")); }
/** * Configures the builder with {@link #defaultRequest()} and adds this as a {@link ExchangeFilterFunction} * @return the {@link Consumer} to configure the builder */ public Consumer<WebClient.Builder> oauth2Configuration() { return builder -> builder.defaultRequest(defaultRequest()).filter(this); }
/** * Configures the builder with {@link #defaultRequest()} and adds this as a {@link ExchangeFilterFunction} * @return the {@link Consumer} to configure the builder */ public Consumer<WebClient.Builder> oauth2Configuration() { return builder -> builder.defaultRequest(defaultRequest()).filter(this); }