49.5. 端点选项
HTTP 端点使用 URI 语法进行配置:
http://httpUri
http://httpUri
使用以下路径和查询参数:
49.5.1. 路径参数(1 参数) 复制链接链接已复制到粘贴板!
| Name | 描述 | 默认值 | 类型 |
|---|---|---|---|
| httpUri (common) | 必需 调用的 HTTP 端点的 url。 | URI |
49.5.2. 查询参数(54 参数) 复制链接链接已复制到粘贴板!
| Name | 描述 | 默认值 | 类型 |
|---|---|---|---|
| disableStreamCache (common) | 确定原始输入流是否被缓存。默认情况下,Camel consumer (camel-servlet、camel-jetty 等)将缓存输入流,以支持多次读取,以确保其 Camel 可以从流检索所有数据。但是,当您需要访问原始流时,您可以将此选项设置为 true,例如将其直接流传输到文件或其他持久性存储。DefaultHttpBinding 将请求输入流复制到流缓存中,如果此选项为 false,则将它放入消息正文,以支持多次读取流。如果您使用 Servlet 到 bridge/proxy 端点,则请考虑启用此选项来提高性能,如果您不需要多次读取消息有效负载。默认情况下,生成者(camel-http)将缓存响应正文流。如果将此选项设置为 true,则生成者不会缓存响应正文流,而是使用按原样(流只能读取一次)作为消息正文。 | false | 布尔值 |
| headerFilterStrategy (common (advanced)) | 使用自定义 HeaderFilterStrategy 过滤到 Camel 消息的标头。 | HeaderFilterStrategy | |
| bridgeEndpoint (producer) | 如果选项为 true,则 HttpProducer 将忽略 Exchange.HTTP_URI 标头,并使用端点的 URI 进行请求。您也可以将 选项 throwExceptionOnFailure 设置为 false,让 HttpProducer 发送所有错误响应。 | false | 布尔值 |
| connectionClose (producer) | 指定是否应将 Connection Close 标头添加到 HTTP Request 中。默认情况下,connectionClose 为 false。 | false | 布尔值 |
| httpMethod (producer) | 配置要使用的 HTTP 方法。如果设置,HttpMethod 标头无法覆盖此选项。 Enum 值:
| HttpMethods | |
| skipRequestHeaders (producer) | 是否跳过将所有 Camel 标头映射为 HTTP 请求标头。如果没有来自 Camel 标头的数据,则需要包含在 HTTP 请求中,这样可避免为 JVM 垃圾收集器处理大量对象分配的开销。 | false | 布尔值 |
| skipResponseHeaders (producer) | 是否跳过将所有 HTTP 响应标头映射到 Camel 标头的映射。如果没有 HTTP 标头需要的数据,这可以避免解析 JVM 垃圾收集器的许多对象分配的开销。 | false | 布尔值 |
| throwExceptionOnFailure (producer) | 如果来自远程服务器的失败响应,用于禁用抛出 HttpOperationFailedException。这样,您可以获取所有响应,而不考虑 HTTP 状态代码。 | true | 布尔值 |
| clearExpiredCookies (producer (advanced)) | 在发送 HTTP 请求前是否清除过期的 Cookie。这样可确保 Cookie 存储不会通过添加新 Cookie (当它们过期时删除)来保持增长。如果组件禁用了 Cookie 管理,则此选项也被禁用。 | true | 布尔值 |
| cookieHandler (producer (advanced)) | 配置 Cookie 处理程序,以维护 HTTP 会话。 | CookieHandler | |
| cookieStore (producer (advanced)) | 使用自定义 CookieStore。默认情况下,使用 BasicCookieStore,它是一个仅内存的 cookie 存储。请注意,如果 bridgeEndpoint=true,那么 Cookie 存储被强制成为 noop cookie 存储,因为 Cookie 不应像我们只是桥接一样存储(例如作为代理)。如果设置了 CookieHandler,则 Cookie 存储也强制成为 noop cookie 存储,因为 Cookie 处理随后由 cookieHandler 执行。 | CookieStore | |
| copyHeaders (producer (advanced)) | 如果此选项为 true,则 IN Exchange 标头将根据复制策略复制到 OUT 交换标头。把它设置为 false,仅允许包含来自 HTTP 响应的标头(而不是传播 IN 标头)。 | true | 布尔值 |
| customHostHeader (producer (advanced)) | 为生成者使用自定义主机标头。如果没有在查询中设置,则忽略。设置后,将覆盖从 url 派生的主机标头。 | 字符串 | |
| deleteWithBody (producer (advanced)) | HTTP DELETE 是否应该包含消息正文。默认情况下,HTTP DELETE 不包含任何 HTTP 正文。然而,在某些情况下,用户可能需要包含消息正文。 | false | 布尔值 |
| followRedirects (producer (advanced)) | HTTP 请求是否应跟随重定向。默认情况下,HTTP 请求不遵循重定向。 | false | 布尔值 |
| getWithBody (producer (advanced)) | HTTP GET 是否应该包含消息正文。默认情况下,HTTP GET 不包含任何 HTTP 正文。然而,在某些情况下,用户可能需要包含消息正文。 | false | 布尔值 |
| ignoreResponseBody (producer (advanced)) | 如果此选项为 true,则 http producer 不会读取响应正文,并缓存输入流。 | false | 布尔值 |
| lazyStartProducer (producer (advanced)) | 生成者是否应懒惰启动 (在第一个消息中)。通过懒惰启动,您可以使用此选项来允许 CamelContext 和路由在生成者启动期间启动,并导致路由启动失败。通过懒惰启动,启动失败可以在路由信息时通过 Camel 的路由错误处理程序进行处理。请注意,在处理第一个消息时,创建并启动生成者可能需要稍等时间,并延长处理的总处理时间。 | false | 布尔值 |
| okStatusCodeRange (producer (advanced)) | 被视为成功响应的状态代码。值包含。可以定义多个范围,用逗号分开,例如 200-204,209,301-304。每个范围必须是单个数字,或从 到,其中包含短划线。 | 200-299 | 字符串 |
| preserveHostHeader (producer (advanced)) | 如果选项为 true,则 HttpProducer 会将 Host 标头设置为当前交换主机标头中包含的值,这适用于您希望下游服务器收到的 Host 标头来反映上游客户端调用的 URL,这允许使用 Host 标头为代理服务生成准确的 URL。 | false | 布尔值 |
| userAgent (producer (advanced)) | 要设置自定义 HTTP User-Agent 请求标头。 | 字符串 | |
| ClientBuilder (advanced) | 提供对此端点的生产者或消费者使用的新 RequestConfig 实例上使用的 http 客户端请求参数的访问权限。 | HttpClientBuilder | |
| clientConnectionManager (advanced) | 使用自定义 HttpClientConnectionManager 来管理连接。 | HttpClientConnectionManager | |
| connectionsPerRoute (advanced) | 每个路由的最大连接数。 | 20 | int |
| httpclient ( advanced) | 设置自定义 HttpClient,供生成者使用。 | HttpClient | |
| httpClientConfigurer (advanced) | 为生成者或消费者创建的新 HttpClient 实例注册自定义配置策略,如配置身份验证机制等。 | HttpClientConfigurer | |
| httpClientOptions (advanced) | 使用映射中的键/值配置 HttpClient: | Map | |
| httpConnectionOptions (advanced) | 使用 Map 中的键/值来配置连接和套接字。 | Map | |
| httpContext (advanced) | 使用自定义 HttpContext 实例。 | HttpContext | |
| maxTotalConnections (advanced) | 连接的最大数量。 | 200 | int |
| useSystemProperties (advanced) | 将系统属性用作配置的回退。 | false | 布尔值 |
| proxyAuthDomain (proxy) | 与 NTML 搭配使用的代理身份验证域。 | 字符串 | |
| proxyAuthHost (proxy) | 代理身份验证主机。 | 字符串 | |
| proxyAuthMethod (proxy) | 要使用的代理验证方法。 Enum 值:
| 字符串 | |
| proxyAuthNtHost (proxy) | 与 NTML 搭配使用的代理身份验证域(workstation 名称)。 | 字符串 | |
| proxyAuthPassword (proxy) | 代理身份验证密码。 | 字符串 | |
| proxyAuthPort (proxy) | 代理身份验证端口。 | int | |
| proxyAuthScheme (proxy) | 要使用的代理身份验证方案。 Enum 值:
| 字符串 | |
| proxyAuthUsername (proxy) | 代理身份验证用户名。 | 字符串 | |
| proxyHost (proxy) | 要使用的代理主机名。 | 字符串 | |
| proxyPort (proxy) | 要使用的代理端口。 | int | |
| authDomain (security) | 与 NTML 搭配使用的身份验证域。 | 字符串 | |
| authenticationPreemptive (security) | 如果此选项为 true,camel-http 会将抢占基本身份验证发送到服务器。 | false | 布尔值 |
| authHost (security) | 与 NTML 搭配使用的身份验证主机。 | 字符串 | |
| authmethod ( security) | 允许将 身份验证方法用作以逗号分开的值列表,即 Basic、Digest 或 NTLM。 | 字符串 | |
| authMethodPriority (security) | 要优先使用哪个验证方法,可以是 Basic、Digest 或 NTLM。 Enum 值:
| 字符串 | |
| authPassword (security) | 身份验证密码. | 字符串 | |
| authUsername (security) | 身份验证用户名. | 字符串 | |
| oauth2ClientId (security) | OAuth2 客户端 ID。 | 字符串 | |
| oauth2ClientSecret (security) | OAuth2 客户端机密。 | 字符串 | |
| oauth2Scope (security) | OAuth2 范围。 | 字符串 | |
| oauth2TokenEndpoint (security) | OAuth2 令牌端点。 | 字符串 | |
| sslContextParameters (security) | 使用 SSLContextParameters 配置安全性。重要: 每个 HttpComponent 支持 org.apache.camel.util.jsse.SSLContextParameters 的一个实例。如果您需要使用 2 个或更多不同的实例,您需要为每个实例定义一个新的 HttpComponent。 | SSLContextParameters | |
| x509HostnameVerifier (security) | 使用自定义 X509HostnameVerifier,如 DefaultHostnameVerifier 或 NoopHostnameVerifier。 | HostnameVerifier |