@ fighub/ api (帮助)
输入的、框架不可知的客户端 配置图 API, (英语), 由 CfigHub OpenAPI 光谱生成。 建造在 openapi 牵引 - 一些KB,没有Redux,没有 反应,不需要提供者. 每个路径、参数和响应都按 已绑定的服务器版本 .
import { createConfigHubClient } from '@confighub/api';
const api = createConfigHubClient({
baseUrl: 'https://hub.confighub.com',
getToken: () => session.accessToken, // optional; sets Authorization: Bearer
});
const me = await api.GET('/me');
const { data, error } = await api.GET('/space/{space_id}/unit', {
params: { path: { space_id } },
});
选项
baseUrl—— CfigHub 实例的绝对基址.getToken?——返回当前无记名符号(可以是async). 连接成一个 每个请求中间软件。 客户端从不存储或刷新符; 配对@confighub/react-auth或者说 提供您自己的符号源 .onUnauthorized?——调用一款401,以便调用者可以刷新或重新登录. 这个 请求不会自动重审.fetch?取消获取执行 .
配置数据
该股的配置不是该股的一个领域. Unit, (中文(简体) ), Revision 财务报告和审定财务报表 Release 携带
DataHash 财务报告和审定财务报表 DataSize;文件本身靠自己的端口生存,为它服务
作为 application/octet-stream。 。 。 . openapi-fetch 将每个回复描述为 JSON 和
将每个身体序列化 JSON.stringify,两者对文档都是错误的——所以使用
而不是直接调用这些路径:
import { getUnitData, putUnitData, getUnitMutationSources } from '@confighub/api';
const { data: config, dataHash, notModified } = await getUnitData(api, { spaceId, unitId });
const { data: result } = await putUnitData(api, { spaceId, unitId }, config + '\n', {
ifMatch: dataHash, // 409 rather than clobbering a concurrent write
lastChangeDescription: 'note',
include: 'ConfigData', // the configuration the write produced
});
const unit = result?.Unit; // a write answers with the result, not the entity
getUnitData编号 :getRevisionData编号 :getReleaseData读取文本,然后返回DataHash从ETAG。 传回去吧ifNoneMatch获取notModified: true而不是一个身体 当一切都变了.putUnitData写下来. 每个描述配置应如何降落的参数 属于这里,而不是在它之前的元数据更新上——mergeExternalSource, (中文(简体) ),mergeBase, (中文(简体) ),mergeEnableSubtraction, (中文(简体) ),protect, (中文(简体) ),clearance, (中文(简体) ),tag, (中文(简体) ),subgroup, (中文(简体) ),changeSetId, (中文(简体) ),lastChangeDescription财务报告和审定财务报表dryRun。元数据调用更改 配置,所以发送到的任何东西都默默地掉下.- 一个 空配置是一个配置 ——空出一个单位就是其资源状况
被撤回了 所以永远不要用
if (config)。 。 。 . getUnitMutationSources编号 :getRevisionMutationSources读取每个值的设置.
将清单改为:每个股一次多次而不是一次请求。 这些是普通的JSON, 因此客户端直接处理它们:
const { data } = await api.GET('/unit_data', {
params: { query: { where: `SpaceID = '${spaceId}'` } },
});
/revision_data, (中文(简体) ), /unit_mutation_sources 财务报告和审定财务报表 /revision_mutation_sources 一样
形状。 四者皆以组织为范围并取一 where 条款.
随操作结果写答案
POST /space/{id}/unit, (中文(简体) ), PUT 财务报告和审定财务报表 PATCH 一,数据写入,批量形成全部
返回时 UnitCreateOrUpdateResponse 而不是一个 Unit - 未包装 .Unit名称
ConfigData 或者说 MutationSources 内 include 添加操作的配置
生产,以及其中的每个值 dryRun 那是唯一的结果
已存在, 因为没有存储 。 一个 include 既非命名,也非可扩展
字段为 400.
类型
全部产生的表面被导出用于再利用 :
import type { paths, components } from '@confighub/api';
type Unit = components['schemas']['Unit'];
Data 财务报告和审定财务报表 MutationSources 不属于任何实体的字段,因此在 select
这是一个400而不是一个默默缺席的领域。 有一个内容散列, DataHash· ;
ContentHash 财务报告和审定财务报表 RevisionHash 已经不复存在.
Types 描述 ConfigHub 服务器的 API 软件包所携带的版本.