@ appport/ protocol
AppPort电线合同:信封类型、错误代码、命名规则、显示 形状、结构验证和相容性分析.
这个包裹是纯的。 它没有运行时间的依赖性,对它一无所知 运输工具、服务器或客户端——这是能够安全地依赖 浏览器捆绑,电子预装脚本或CLI.
import { createRequest, parseClientEnvelope, PROTOCOL_ID } from "@appport/protocol";
const request = createRequest({
requestId: "req_01J...",
capability: { name: "documents.save", version: 1 },
input: { documentId: "doc_1", content: "hello" }
});
parseClientEnvelope(request); // throws AppPortError on a malformed envelope
这是什么
| 模块 | 目录 |
|---|---|
version | appport/1,符合水平 |
envelopes | 请求、响应、事件、订阅、流信封和卫士 |
validate | 协议级结构验证、解码和编码 |
errors | 标准错误代码和 AppPortError |
names | 能力、事件、许可和应用程序代号语法 |
ids | 基于 ULID 的标识工具 |
manifest | 说明、发现和运输说明类型 |
jsonschema | 在清单中公布的 JSON Schema 子集 |
session | Principal 财务报告和审定财务报表 Session |
operations | 长期运行记录 |
blob | 二进制引用 |
compatibility | (一) 破解与未破解的表面分解; compareSchemas 为了一副图案 |
fulfillment | 警犬合同(isCanonicalContract),实现债权(claimFor, (中文(简体) ), claimsFor, (中文(简体) ), lintFulfillment及其评价evaluateFulfillment(中文(简体) )spec/fulfillment-1.md页:1 |
integration | 综合元数据 lintIntegration; 依赖性,包括犬类目标(CanonicalDependencyTarget, (中文(简体) ), isCanonicalDependencyTarget,自1.2.0起) |
核对姓名,而不仅仅是输入: electron.documents.save 财务报告和审定财务报表
ipc.saveDocument 被拒绝,因为编码 a 的能力名称
运输打破了协议的核心无常.
公开发现(1.1.0)
buildPublicDescription, (中文(简体) ), validatePublicDescription, (中文(简体) ), capabilityDigest, (中文(简体) ), contractDigest, (中文(简体) ), PUBLIC_DESCRIPTION_PATH 编辑
appport.public-description/1 计划( s)spec/schemas/public-description.schema.json 页:1 发布是申请
拥有者明确,失败的闭塞决定;描述是权威显示的指针和摘要,是不信任的数据.
发现不是授权,批准或出版商信任.