在集群内集成访问工具后,可以为当前 ConnectorClass 提供一个 RESTful API,方便获取工具内的资源。这些 API 将统一通过 Connector API 暴露,允许用户从当前 Connector 指向的工具中获取资源。
Connectors 系统提供了一整套扩展机制,使开发者更容易扩展 ConnectorClass 的 API 能力。
Connectors API 提供了统一的请求入口。当客户端发起针对特定 Connector 指向工具的资源请求时,系统会将请求转发到对应 ConnectorClass 的 API 地址,进而转发到工具的 API 地址以获取工具内的资源。
例如:
API 地址
/connectors/v1alpha1/namespaces/{namespace}/connectors/{name}/resources/{resource-name}
namespace
:当前 Connector 所在的命名空间。name
:当前 Connector 的名称。resource-name
:请求的资源名称,可通过查阅对应 ConnectorClass 的文档理解。认证与授权
认证遵循 Kubernetes 认证标准,通过 Kubernetes 的认证和授权机制完成。请求用户必须对对应的 connector
具备读取权限。
向工具发起最终请求时,将使用 Connector 指定的 Secret 信息进行认证。
查询参数
由具体 ConnectorClass API 决定。
分页信息
通过查询参数指示。
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
page | int | 否 | 页码 |
itemsPerPage | int | 否 | 每页条目数 |
响应信息
返回列表时,结构如下:
字段名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
listMeta | ListMeta | 是 | 列表的元数据 |
listMeta.totalItems | int | 是 | 请求资源的总数,客户端可据此分析分页信息 |
items | [] | 是 | 列表中的数据项;数据结构由 ConnectorClass API 决定 |
当响应非 200 时,返回的数据结构应符合 k8s status。
例如:
字段定义和枚举值与 k8s status 保持一致。
开发者可以扩展 ConnectorClass 的 API 能力,为用户提供更丰富的资源获取能力。