属性

您可以向请求添加属性。如果您想通过过滤器链传递信息并影响给定请求的过滤器行为,这将非常方便。例如

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);

	}

请注意,您可以在WebClient.Builder级别全局配置defaultRequest回调,这允许您将属性插入所有请求中,例如,这可以在 Spring MVC 应用程序中用于基于ThreadLocal数据填充请求属性。