Передать динамические значения в реализацию ExchangeFilterFunction в Spring WebClient - PullRequest
0 голосов
/ 18 октября 2018

Я хотел бы использовать ExchangeFilterFunction и использовать некоторые динамические значения в нем для добавления в заголовок запроса.

 webClient = WebClient.builder()
            .clientConnector(new ReactorClientHttpConnector(options -> {
                options.option(ChannelOption.SO_TIMEOUT, DEFAULT_READ_TIMEOUT);
                options.option(ChannelOption.CONNECT_TIMEOUT_MILLIS, DEFAULT_CONNECTION_TIMEOUT);
            })).filter(userCredentialDelegationFilter).build();


public class UserCredentialDelegationFilter implements ExchangeFilterFunction {

@Override
public Mono<ClientResponse> filter(ClientRequest request, ExchangeFunction next) {

    String orgId = // ** I would like to pass in this org id when callling get on web client.

    if (orgId != null) {
        request = ClientRequest.from(request).header(ClientConstants.HEADER_ORG_ID, securityContext.getOrgId()).build();
    }

    return next.exchange(request);
}
}

Как мне этого добиться?

...