@dashevo/dapi-grpc

中文文档
5.0.3发布于 2026/11/04MITCommonJS近 30 天下载 4710

DAPI GRPC 定义文件和生成的客户端

中文使用文档
文档目录9 节
  1. 目录
  2. 安装
  3. 使用量
  4. 核心客户端
  5. 平台客户端
  6. 维护者
  7. 捐款
  8. 许可证
  9. 建设生成的客户端

DAPI 地球资源保护方案

Build Status NPM version Release Date license

分散 API GRPC 定义文件和生成的客户端

目录

安装

确保您有最新的 节点JS 已安装.

从仓库

克隆还原器 :

git clone https://github.com/dashevo/dapi-grpc

安装 npm 包 :

npm install

国家预防机制

npm install @dashevo/dapi-grpc

使用量

节点用户可以通过在v0属性下要求它们来访问导出元素.

核心客户端

提供客户端执行核心请求.

const {
  v0: {
    CorePromiseClient,
  },
} = require('@dashevo/dapi-grpc');

const client = new CorePromiseClient(url);

提供的方法允许通过通过特定请求参数执行请求(见下文实例). 所有方法共用相同的 API :

  • 第一个参数期望一个请求类(如GetBrock Request,GetTransaction Request)的特定请求实例.
  • 第二个参数是元数据对象的可选参数.
  • 第三个参数是选项的可选参数.

以下是一个用例

const {
  v0: {
    CorePromiseClient,
    GetBlockRequest,
    GetBlockResponse,
  },
} = require('@dashevo/dapi-grpc');

const client = new CorePromiseClient(url);

async function getBlockByHash(hash, options = {}) {
  const getBlockRequest = new GetBlockRequest();
  getBlockRequest.setHash(hash);

  const response = await client.getBlock(
    getBlockRequest,
    {},
    options,
  );
  const blockBinaryArray = response.getBlock();

  return Buffer.from(blockBinaryArray);
}

可用方法:

  • 获取状态
  • 获取锁定
  • 传输
  • 获取交易
  • 获得估计的交易费
  • 订阅 ChanLocks 的 Block 标题
  • 订阅 TRActions with proofs

对于流, 如订阅ToTransactions With Proofs和订阅ToBlock Headers With ChainLocks, a grpc- 网络流 将返回. 有关其使用情况的更多信息可以从其存储处读取.

平台客户端

提供客户端执行平台请求. 方法的API和用法与CorePromiseClient相似.

const {
  v0: {
    PlatformPromiseClient,
  },
} = require('@dashevo/dapi-grpc');

const client = new PlatformPromiseClient(url);

可用方法:

  • 过渡
  • 获取身份
  • 获取数据合同
  • 获取文档
  • 获取身份
  • 等待状态转换
  • 获取共识
  • 设定协议版本

维护者

@shumkov (英语)

捐款

随便下潜吧! 打开一个问题 或者提交公关.

许可证

麻省理工学院 达什核心小组股份有限公司.

建设生成的客户端

从"平台"起,运行 yarn install,然后提供本地人 一次客户端生成器 :

python3 packages/dapi-grpc/scripts/setup-codegen.py --install
yarn workspace @dashevo/dapi-grpc build

安装需要 Python 3.12 或更新,CMake 和一个 C++ 编译器. 它会建立 校验和验证源输入您的用户缓存, 不包含sudo 或 Docker 。 链接 运行图像在 /opt/client-codegen设置 DAPI_GRPC_TOOLCHAIN 使用明确规定的装置; 缺失或 不匹配的安装失败, 而不是默默地选择不同的原型 .

codegen.json 将食谱和本地生成器版本标出。 客户端编译器 刻意与 Rust 建筑的原型分离 32.0: 现有客户端 输出使用原生起泡 3.18.1, gRPC 1.46.3, gRPC Java 1.4.2.1 和 Yrn-clock ts-protoc-gen 0.15.0. 更新食谱、平台锁和跑道要求 和生成输出兼容性检查。 普通建筑从不 安装系统包或启动容器.

在替换所有语言之前先进行生成阶段 clients/插件失败 保留上一个输出。 Java,目标-C和Python 生成用于 国家防范机制的档案继续将他们排除在外 节点和网络客户端. 安装工具后运行生成回归 :

yarn workspace @dashevo/dapi-grpc exec python3 -m unittest discover -s tests/codegen -v

版本与发布记录

@dashevo/dapi-grpc 共发布 486 个版本,首次发布于 2019/04/18;过去 12 个月发布了 72 个版本。

版本发布日期距今
5.0.3latest2026/11/047 天前
5.0.22026/11/029 天前
5.0.12026/10/2714 天前
5.0.02026/10/2715 天前
5.0.0-rc.82026/10/2319 天前
5.0.0-rc.72026/10/2220 天前

其他发布通道:dev → 0.12.0-dev.10,0.13-dev → 0.13.0-dev.4,0.14-dev → 0.14.0-dev.1,0.15-dev → 0.15.0-dev.4,0.16-dev → 0.16.0-dev.3,0.17-dev → 0.17.0-dev.1。

关于 @dashevo/dapi-grpc 的常见问题

@dashevo/dapi-grpc 是什么?

DAPI GRPC 定义文件和生成的客户端

如何安装 @dashevo/dapi-grpc?

在项目目录运行 npm install @dashevo/dapi-grpc,或使用 pnpm add / yarn add / bun add。

@dashevo/dapi-grpc 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/dashevo__dapi-grpc 是否存在。

@dashevo/dapi-grpc 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@dashevo/dapi-grpc 可以商用吗?

@dashevo/dapi-grpc 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@dashevo/dapi-grpc 的下载量有多少?

根据 npm 官方下载统计,@dashevo/dapi-grpc 在 2026/10/12 – 2026/11/10 这 30 天内被下载 4,710 次,日均约 157 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@dashevo/dapi-grpc 还在维护吗?

最新版本 5.0.3 发布于 2026/11/04(7 天前);至今共发布 486 个版本,其中过去 12 个月发布了 72 个;首次发布于 2019/04/18。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。