3.14. Configuring AsyncHttpClient

AsyncHttpClient 客户端使用 AsyncHttpClientConfig 来配置客户端。如需了解更多详细信息,请参阅
Async Http Client 文档。

在 Camel 2.8 中,配置仅限于使用 AsyncHttpClientConfig.Builder 提供的构建器模式。在 Camel 2.8 中,AsyncHttpClientConfig 不支持 getters/setter,因此无法使用 Spring bean 风格(如 XML 文件中的 <bean> 标签)轻松创建/配置。

以下示例演示了如何使用构建程序来创建我们在 AhcComponent 上配置的 AsyncHttpClientConfig

在 Camel 2.9 中,AHC 组件使用 Async HTTP 库 1.6.4。这个更新的版本添加了对普通 bean 风格的配置的支持。AsyncHttpClientConfigBean 类为 AsyncHttpClientConfig 中的配置选项提供 getters 和 setters。AsyncHttpClientConfigBean 实例可以直接传递到 AHC 组件,或使用 clientConfig URI 参数在端点 URI 中引用。

Camel 2.9 中还提供直接在 URI 中设置配置选项的功能。以 "clientConfig." 开头的 URI 参数可用于设置 AsyncHttpClientConfig 的各种可配置属性。端点 URI 中指定的属性与 "clientConfig" URI 参数引用的配置中指定的属性合并,使用 "clientConfig." 参数进行设置。引用的 AsyncHttpClientConfig 实例始终为每个端点复制,使得任何之前创建的端点上的设置将保持独立于任何之前创建的端点。以下示例演示了如何使用 "clientConfig." 类型 URI 参数来配置 AHC 组件。

from("direct:start")
    .to("ahc:http://localhost:8080/foo?clientConfig.maxRequestRetry=3&clientConfig.followRedirects=true")