您可以向请求添加属性。如果您想传递信息,这很方便 通过过滤器链并影响给定请求的过滤器的行为。 例如:
-
Java
-
Kotlin
WebClient client = WebClient.builder()
.filter((request, next) -> {
Optional<Object> usr = request.attribute("myAttribute");
// ...
})
.build();
client.get().uri("https://example.org/")
.attribute("myAttribute", "...")
.retrieve()
.bodyToMono(Void.class);
}
val client = WebClient.builder()
.filter { request, _ ->
val usr = request.attributes()["myAttribute"];
// ...
}
.build()
client.get().uri("https://example.org/")
.attribute("myAttribute", "...")
.retrieve()
.awaitBody<Unit>()
请注意,您可以在允许您将属性插入到所有请求中的级别全局配置回调,
例如,可以在 Spring MVC 应用程序中用于填充
基于数据请求属性。defaultRequest
WebClient.Builder
ThreadLocal