# @dashevo/dapi-grpc 中文文档

规范地址：https://npmcn.com/package/%40dashevo/dapi-grpc/

版本：5\.0\.3
npm 元数据更新时间：2026-11-03T19:34:49.617Z
中文译文更新时间：2026-11-11T12:34:13.057Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40dashevo/dapi-grpc
原文对照：https://npmcn.com/package/%40dashevo/dapi-grpc/?lang=original
项目主页：https://github.com/dashevo/dapi-grpc#readme
源码仓库：https://github.com/dashevo/dapi-grpc

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：30.4 MB，66 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- 运行依赖：6 个
- 首次发布：2019-04-18T13:57:49.173Z
- 最新版本发布：2026-11-03T19:34:49.444Z
- 近 30 天下载量：4710（2026-10-12 至 2026-11-10，npm 官方下载统计）
- 已发布版本数：486（近 12 个月 72 个）

## 中文简介

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

## 安装

```sh
npm install @dashevo/dapi-grpc
```

也可以使用：`pnpm add @dashevo/dapi-grpc`、`yarn add @dashevo/dapi-grpc`、`bun add @dashevo/dapi-grpc`

## README

# DAPI 地球资源保护方案

[![Build Status](https://github.com/dashpay/platform/actions/workflows/release.yml/badge.svg)](https://github.com/dashpay/platform/actions/workflows/release.yml) [![NPM version](https://img.shields.io/npm/v/@dashevo/dapi-grpc.svg)](https://npmjs.org/package/@dashevo/dapi-grpc) [![Release Date](https://img.shields.io/github/release-date/dashpay/platform)](https://github.com/dashpay/platform/releases/latest) [![license](https://img.shields.io/github/license/dashevo/dapi-grpc.svg)](https://npmcn.com/package/%40dashevo/dapi-grpc/LICENSE)

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

## 目录

-   [安装](https://npmcn.com/package/%40dashevo/dapi-grpc/#readme-install)
-   [使用量](https://npmcn.com/package/%40dashevo/dapi-grpc/#readme-usage)
-   [捐款](https://npmcn.com/package/%40dashevo/dapi-grpc/#readme-contributing)
-   [许可证](https://npmcn.com/package/%40dashevo/dapi-grpc/#readme-license)

## 安装

确保您有最新的 [节点JS](https://nodejs.org/en/download/) 已安装.

#### 从仓库

克隆还原器 :

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

安装 npm 包 :

```shell
npm install
```

#### 国家预防机制

```sh
npm install @dashevo/dapi-grpc
```

## 使用量

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

### 核心客户端

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

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

const client = new CorePromiseClient(url);
```

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

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

以下是一个用例

```js
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- 网络流](https://github.com/grpc/grpc-web) 将返回. 有关其使用情况的更多信息可以从其存储处读取.

### 平台客户端

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

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

const client = new PlatformPromiseClient(url);
```

可用方法:

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

## 维护者

[@shumkov (英语)](https://github.com/shumkov)

## 捐款

随便下潜吧! [打开一个问题](https://github.com/dashpay/platform/issues/new/choose) 或者提交公关.

## 许可证

[麻省理工学院](https://npmcn.com/package/%40dashevo/dapi-grpc/LICENSE) 达什核心小组股份有限公司.

## 建设生成的客户端

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

```sh
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 生成用于 国家防范机制的档案继续将他们排除在外 节点和网络客户端. 安装工具后运行生成回归 :

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

## 常见问题

### @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 和提交记录判断。

