属性
リクエストに属性を追加できます。これは、情報をフィルターチェーンに渡し、特定のリクエストに対するフィルターの動作に影響を与える場合に便利です。例:
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>()
defaultRequest
コールバックを WebClient.Builder
レベルでグローバルに構成できることに注意してください。これにより、すべてのリクエストに属性を挿入できます。これは、たとえば、Spring MVC アプリケーションで ThreadLocal
データに基づいてリクエスト属性を設定するために使用できます。