# @canton-network/core-provider-ledger 中文文档

规范地址：https://npmcn.com/package/%40canton-network/core-provider-ledger/

版本：1\.17\.0
npm 元数据更新时间：2026-11-05T21:17:42.657Z
中文译文更新时间：2026-11-09T01:19:51.418Z
软件包许可：Apache-2\.0

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

原始 npm 页面：https://www.npmjs.com/package/%40canton-network/core-provider-ledger
原文对照：https://npmcn.com/package/%40canton-network/core-provider-ledger/?lang=original
项目主页：https://github.com/canton-network/wallet/tree/main/core/provider-ledger#readme
源码仓库：https://github.com/canton-network/wallet

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

- 包体积（解压后）：41 kB，11 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：5 个
- 首次发布：2026-02-20T17:49:01.667Z
- 最新版本发布：2026-11-05T21:17:42.324Z
- 近 30 天下载量：322690（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：42（近 12 个月 42 个）

## 中文简介

直接使用分类账的Splice提供者实施.

## 安装

```sh
npm install @canton-network/core-provider-ledger
```

也可以使用：`pnpm add @canton-network/core-provider-ledger`、`yarn add @canton-network/core-provider-ledger`、`bun add @canton-network/core-provider-ledger`

## README

# @ canton- network/ 核心提供者- 引导器

**提供者** jSON Ledger API直接进入 执行 [`@canton-network/core-splice-provider`](https://npmcn.com/package/%40canton-network/splice-provider) 采用单一RPC型方法, `ledgerApi`,由 `@canton-network/core-ledger-client` 超过HTTP.

在Node.js和浏览器中工作. 典型的使用情况:

-   传递一个实例到 [`@canton-network/wallet-sdk`](https://www.npmjs.com/package/@canton-network/wallet-sdk) 通过 `SDK.create({ ledgerProvider })` (或让SDK从 `ledgerClientUrl` + auth) (中文(简体) ).
-   打电话 `ledgerApi` 直接来自工具、脚本或已有分类账的服务 证书.

如果你在建坎顿 **(单位:千美元)** 说到钱包,更喜欢 [`@canton-network/dapp-sdk`](https://www.npmjs.com/package/@canton-network/dapp-sdk) (和 [`@canton-network/core-provider-dapp`](https://npmcn.com/package/%40canton-network/provider-dapp)相反.

发表于 [无](https://www.npmjs.com/package/@canton-network/core-provider-ledger) 下级 阿帕奇2.0 (英语).

## 安装

```bash
npm install @canton-network/core-provider-ledger
```

## 概览

```mermaid
flowchart LR
    App["App / Wallet SDK"] --> LP["LedgerProvider"]
    LP -->|"ledgerApi"| HTTP["HTTP"]
    HTTP --> LAPI["JSON Ledger API"]
```

-   **方法 :** `ledgerApi` 只——参数编码 `resource`, (中文(简体) ), `requestMethod`选择 `body` 编号 : `path` 编号 : `query`
-   **运输:** HTTP(由Canton JSON Ledger API要求)
-   **认证 :** 任意 `AccessTokenProvider` 从 `@canton-network/core-wallet-auth` (静态标志, 客户资格,自签,.)

## 使用量

```ts
import { LedgerProvider } from '@canton-network/core-provider-ledger'
import type { AccessTokenProvider } from '@canton-network/core-wallet-auth'

const accessTokenProvider: AccessTokenProvider = {
    getAccessToken: async () => 'jwt...',
    getAuthContext: async () => ({
        userId: 'alice',
        accessToken: 'jwt...',
    }),
}

const provider = new LedgerProvider({
    baseUrl: 'https://ledger-api.example.com',
    accessTokenProvider,
})

const version = await provider.request({
    method: 'ledgerApi',
    params: {
        resource: '/v2/version',
        requestMethod: 'get',
    },
})
```

## 类型

由于某些类型的推论限制,请求的返回类型崩溃到 `unknown`。为了帮助编译器,您可以提供与您在分类账Api中使用的操作相应的可选类型参数。 之后,反应被打得干净:

```ts
import { LedgerProvider, type Ops } from '@canton-network/core-provider-ledger'

const party = await provider.request<Ops.PostV2Parties>({
    method: 'ledgerApi',
    params: {
        resource: '/v2/parties',
        requestMethod: 'post',
        body: {
            partyHint: 'my-party',
        },
    },
})

console.log(party.partyDetails?.party)
```

操作类型由Ledger OpenAPI生成为面向供应商的联盟(参见 输入注释 [`core/splice-provider`](https://npmcn.com/package/%40canton-network/splice-provider/README.md#openapi-ledger-api)) (中文(简体) ).

## 请求数据

根据操作情况,提供一个或多个:

```ts

provider.request({
    method: 'ledgerApi',
    params: {
        ...,
        body?: {
            // usually for POST requests (JSON object body)
        },
        path?: {
            // `path` arguments, usually for GET requests (i.e., `/v2/parties/{party-id}`)
            "party-id": "some-party-id"
        },
        query?: {
            // `query` params, usually for GET requests (i.e., `/v2/...?param=data`)
            "param": "data"
        }
    }
})
```

让操作类型指南需要哪些字段 .

## 相关

| 软件包 | 作用 |
| --- | --- |
| [`@canton-network/core-splice-provider`](https://npmcn.com/package/%40canton-network/splice-provider) | 提供者接口和 `AbstractProvider` |
| [`@canton-network/core-provider-dapp`](https://npmcn.com/package/%40canton-network/provider-dapp) | CIP- 103 同步/ Async 钱包提供者 |
| [`@canton-network/core-ledger-client`](https://npmcn.com/package/%40canton-network/ledger-client) | JSON LAPI 客户端 |
| [`@canton-network/core-wallet-auth`](https://npmcn.com/package/%40canton-network/wallet-auth) | `AccessTokenProvider` 执行情况 |
| [`@canton-network/wallet-sdk`](https://npmcn.com/package/sdk/wallet-sdk) | 关于分类账访问的高级钱包工具 |

## 常见问题

### @canton-network/core-provider-ledger 是什么？

直接使用分类账的Splice提供者实施\.

### 如何安装 @canton-network/core-provider-ledger？

在项目目录运行 npm install @canton-network/core-provider-ledger，或使用 pnpm add / yarn add / bun add。

### @canton-network/core-provider-ledger 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @canton-network/core-provider-ledger 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @canton-network/core-provider-ledger 可以商用吗？

@canton-network/core-provider-ledger 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @canton-network/core-provider-ledger 的下载量有多少？

根据 npm 官方下载统计，@canton-network/core-provider-ledger 在 2026/10/09 – 2026/11/07 这 30 天内被下载 322,690 次，日均约 10,756 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @canton-network/core-provider-ledger 还在维护吗？

最新版本 1\.17\.0 发布于 2026/11/06（3 天前）；至今共发布 42 个版本，其中过去 12 个月发布了 42 个；首次发布于 2026/02/21。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

