搜索

150.3. HTTP 选项

download PDF

HTTP 组件支持 8 个选项,如下所列。

Name描述默认值类型

httpClientConfigurer (advanced)

若要使用自定义 HttpClientConfigurer 来执行要使用的 HttpClient 配置。

 

HttpClientConfigurer

httpConnectionManager (advanced)

使用自定义 HttpConnectionManager 管理连接

 

HttpConnectionManager

httpBinding (producer)

使用自定义 HttpBinding 来控制 Camel 消息和 HttpClient 之间的映射。

 

HttpBinding

httpConfiguration (producer)

将共享 HttpConfiguration 用作基础配置。

 

HttpConfiguration

allowJavaSerialized Object (producer)

当请求使用 context-type=application/x-java-serialized-object This 默认为 off 时允许 java serialization。如果您启用它,则 Java 会将传入的数据反序列化 Java 请求,这可能会成为潜在的安全风险。

false

布尔值

useGlobalSslContext 参数 (security)

启用使用全局 SSL 上下文参数。

false

布尔值

headerFilterStrategy (filter)

使用自定义 org.apache.camel.spi.HeaderFilterStrategy 过滤到 Camel 消息的标头。

 

HeaderFilterStrategy

resolveProperty Placeholders (advanced)

组件是否应在启动时解析属性占位符。只有 String 类型的属性可以使用属性占位符。

true

布尔值

HTTP 端点使用 URI 语法进行配置:

http:httpUri

使用以下路径和查询参数:

150.3.1. 路径参数(1 参数):

Name描述默认值类型

httpUri

必需 调用的 HTTP 端点的 url。

 

URI

150.3.2. 查询参数(38 参数):

Name描述默认值类型

disableStreamCache (common)

确定 Servlet 中的原始输入流是否被缓存(Camel 将会在 memory/overflow 中读取流到文件,流缓存)缓存。默认情况下,Camel 将缓存 Servlet 输入流,以支持多次读取,以确保其 Camel 可以从流检索所有数据。但是,当您需要访问原始流时,您可以将此选项设置为 true,例如将其直接流传输到文件或其他持久性存储。DefaultHttpBinding 将请求输入流复制到流缓存中,如果此选项为 false,则将它放入消息正文,以支持多次读取流。如果您使用 Servlet 到 bridge/proxy 端点,则请考虑启用此选项来提高性能,如果您不需要多次读取消息有效负载。http/http4 producer 默认缓存响应正文流。如果将此选项设置为 true,则生成者不会缓存响应正文流,而是使用响应流作为消息正文。

false

布尔值

headerFilterStrategy (common)

使用自定义 HeaderFilterStrategy 过滤到 Camel 消息的标头。

 

HeaderFilterStrategy

httpBinding (common)

使用自定义 HttpBinding 来控制 Camel 消息和 HttpClient 之间的映射。

 

HttpBinding

bridgeEndpoint (producer)

如果选项为 true,则 HttpProducer 将忽略 Exchange.HTTP_URI 标头,并使用端点的 URI 进行请求。您也可以将 选项 throwExceptionOnFailure 设置为 false,让 HttpProducer 发送所有错误响应。

false

布尔值

chunked (producer)

如果此选项为 false,则 Servlet 将禁用 HTTP 流,并在响应上设置 content-length 标头

true

布尔值

connectionClose (producer)

指定是否应将 Connection Close 标头添加到 HTTP Request 中。默认情况下,connectionClose 为 false。

false

布尔值

copyHeaders (producer)

如果此选项为 true,则 IN Exchange 标头将根据复制策略复制到 OUT 交换标头。把它设置为 false,仅允许包含来自 HTTP 响应的标头(而不是传播 IN 标头)。

true

布尔值

httpMethod (producer)

配置要使用的 HTTP 方法。如果设置,HttpMethod 标头无法覆盖此选项。

 

HttpMethods

ignoreResponseBody (producer)

如果此选项为 true,http producer 不会读取响应正文,并缓存输入流

false

布尔值

preserveHostHeader (producer)

如果选项为 true,HttpProducer 会将 Host 标头设置为当前交换主机标头中包含的值,这适用于您希望下游服务器收到的 Host 标头来反映上游客户端调用的 URL 的 URL,这将允许使用 Host 标头为代理服务生成准确的 URL 的应用

false

布尔值

throwExceptionOnFailure (producer)

如果来自远程服务器的失败响应,用于禁用抛出 HttpOperationFailedException。这样,您可以获取所有响应,而不考虑 HTTP 状态代码。

true

布尔值

transferException (producer)

如果在消费者端启用并交换失败处理,如果原因 Exception 在响应中作为 application/x-java-serialized-object 内容类型发送序列化,则结果为 application/x-java-serialized-object 内容类型。在生产者侧,异常将反序列化并丢弃为原样,而不是 HttpOperationFailedException。原因异常需要按顺序处理。默认为关闭。如果您启用它,则 Java 会将传入的数据反序列化 Java 请求,这可能会成为潜在的安全风险。

false

布尔值

cookieHandler (producer)

配置 Cookie 处理程序,以维护 HTTP 会话

 

CookieHandler

okStatusCodeRange (producer)

被视为成功响应的状态代码。值包含。可以定义多个范围,用逗号分开,例如 200-204,209,301-304。每个范围必须是单个数字,或从 到,其中包含短划线。

200-299

字符串

urlRewrite (producer)

弃用 引用自定义 org.apache.camel.component.http.UrlRewrite,它允许您在 bridge/proxy 端点时重写 url。更多信息,请访问 http://camel.apache.org/urlrewrite.html

 

UrlRewrite

httpClientConfigurer (advanced)

为生成者或消费者创建的新 HttpClient 实例注册自定义配置策略,如配置身份验证机制等

 

HttpClientConfigurer

httpClientOptions (advanced)

使用映射中的键/值配置 HttpClient:

 

Map

httpConnectionManager (advanced)

使用自定义 HttpConnectionManager 管理连接

 

HttpConnectionManager

httpConnectionManager 选项 (advanced)

使用映射中的键/值来配置 HttpConnectionManager。

 

Map

mapHttpMessageBody (advanced)

如果此选项为 true,则交换的 IN Exchange Body 将映射到 HTTP 正文。把它设置为 false 可以避免 HTTP 映射。

true

布尔值

mapHttpMessageFormUrl EncodedBody (advanced)

如果此选项为 true,则交换的 IN Exchange Form Encoded body 将映射到 HTTP。把它设置为 false 可以避免 HTTP Form Encoded body 映射。

true

布尔值

mapHttpMessageHeaders (advanced)

如果此选项为 true,则交换的 IN Exchange Headers 将映射到 HTTP 标头。把它设置为 false 将避免 HTTP 标头映射。

true

布尔值

同步 (高级)

设置是否应严格使用同步处理,还是允许 Camel 使用异步处理(如果支持)。

false

布尔值

proxyAuthDomain (proxy)

与 NTML 搭配使用的代理身份验证域

 

字符串

proxyAuthHost (proxy)

代理身份验证主机

 

字符串

proxyAuthMethod (proxy)

要使用的代理验证方法

 

字符串

proxyAuthPassword (proxy)

代理身份验证密码

 

字符串

proxyAuthPort (proxy)

代理身份验证端口

 

int

proxyAuthScheme (proxy)

要使用的代理身份验证方案

 

字符串

proxyAuthUsername (proxy)

代理身份验证用户名

 

字符串

proxyHost (proxy)

要使用的代理主机名

 

字符串

proxyPort (proxy)

要使用的代理端口

 

int

authDomain (security)

与 NTML 搭配使用的身份验证域

 

字符串

authHost (security)

与 NTML 搭配使用的身份验证主机

 

字符串

authmethod ( security)

允许将 身份验证方法用作以逗号分开的值列表,即 Basic、Digest 或 NTLM。

 

字符串

authMethodPriority (security)

要优先使用哪个验证方法,可以是 Basic、Digest 或 NTLM。

 

字符串

authPassword (security)

身份验证密码

 

字符串

authUsername (security)

身份验证用户名

 

字符串

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.