第 277 章 选项
REST OpenApi 组件支持 10 个选项,它们如下所列。
名称 | 描述 | 默认 | 类型 |
---|---|---|---|
basePath (producer) | API basePath,如 /v2。默认为 unset,如果设置会覆盖 OpenApi 规格中存在的值。 | 字符串 | |
componentName (producer) | 将执行请求的 Camel 组件的名称。组件必须存在于 Camel 注册表中,并且必须实施 RestProducerFactory 服务提供商接口。如果没有设置 CLASSPATH,则会搜索实现 RestProducerFactory SPI 的单个组件。可以在端点配置中覆盖。 | 字符串 | |
consumes (producer) | 此组件可以消耗的有效负载类型。根据 RFC7231,可以是 type,如 application/json 或多个类型作为 application/json、application/xml; q=0.5。这等同于 Accept HTTP 标头的值。如果设置覆盖 OpenApi 规格中找到的任何值。可以在端点配置中覆盖 | 字符串 | |
host (producer) | 方案主机名和端口以 https://hostname:port 的形式将 HTTP 请求定向到。可以在端点、组件或在 Camel 上下文中对应的 REST 配置中进行配置。如果您为这个组件指定一个名称(如 petstore),则首先会参考 REST 配置、下一个 rest-openapi 下一个和全局配置。如果设置覆盖 OpenApi 规格, RestConfiguration 中的任何值。可以在端点配置中覆盖。 | 字符串 | |
produces (producer) | 生成此组件的有效负载类型。例如,根据 RFC7231 的 application/json 示例。这等同于 Content-Type HTTP 标头的值。如果 set 覆盖 OpenApi 规格中存在的任何值。可以在端点配置中覆盖。 | 字符串 | |
specificationUri (producer) | OpenApi 规格文件的路径。这个规格中采用主机基本路径,但可以使用组件或端点级别的属性覆盖它们。如果未指定组件,则组件会尝试加载 openapi.json 资源。请注意,在组件和端点中定义的主机应该包含 URI 语法(例如 https://api.example.com:8080)中的方案、主机名和端口的可选端口。可以在端点配置中覆盖。 | openapi.json | URI |
sslContextParameters (security) | 自定义组件使用的 TLS 参数。如果没有设置,则默认为 Camel 上下文中设定的 TLS 参数 | SSLContextParameters | |
useGlobalSslContextParameters (security) | 启用使用全局 SSL 上下文参数。 | false | 布尔值 |
basicPropertyBinding (advanced) | 组件是否应使用基本的属性绑定(Camel 2.x)或较新的属性绑定额外功能 | false | 布尔值 |
lazyStartProducer (producer) | 制作者是否应该启动 lazy(在第一个消息上)。通过启动 lazy,您可以使用它来允许 CamelContext 和路由在启动期间启动,否则在启动期间出现问题,并导致路由启动失败。通过将这个启动延迟到 lazy 后,可以在通过 Camel 的路由错误处理程序路由消息期间处理启动失败。注意在处理第一个消息时,创建并启动制作者可能花费较少的时间,从而延长处理的总处理时间。 | false | 布尔值 |
REST OpenApi 端点使用 URI 语法配置:
rest-openapi:specificationUri#operationId
使用以下路径和查询参数:
277.1. 路径名(2 参数):
名称 | 描述 | 默认 | 类型 |
---|---|---|---|
specificationUri | OpenApi 规格文件的路径。这个规格中采用主机基本路径,但可以使用组件或端点级别的属性覆盖它们。如果没有给定组件尝试从 classpath 加载 openapi.json 资源。请注意,在组件和端点中定义的主机应该包含 URI 语法(例如 http://api.example.com:8080)中的方案、主机名和端口的可选端口。覆盖组件配置。OpenApi 规格可以通过前缀 file: classpath: http: https 从不同的源加载。对 https 的支持仅限于使用 JDK 安装的 UrlHandler,因此可为 https 设置 TLS/SSL 证书(如设置多个 javax.net.ssl JVM 系统属性)可能比较繁琐。如何参考 JDK 文档获取 UrlHandler。 | openapi.json | URI |
operationId | OpenApi 规范中操作所需的 ID。 | 字符串 |