# @digitalcredentials/security-document-loader 中文文档

规范地址：https://npmcn.com/package/%40digitalcredentials/security-document-loader/

版本：9\.0\.0
npm 元数据更新时间：2026-09-30T17:46:24.049Z
中文译文更新时间：2026-11-12T08:56:39.263Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40digitalcredentials/security-document-loader
原文对照：https://npmcn.com/package/%40digitalcredentials/security-document-loader/?lang=original
项目主页：https://github.com/digitalcredentials/security-document-loader
源码仓库：https://github.com/digitalcredentials/security-document-loader

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

- 包体积（解压后）：22 kB，13 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=16\.0
- 运行依赖：21 个
- 首次发布：2022-10-17T19:15:47.600Z
- 最新版本发布：2026-05-22T22:52:13.519Z
- 近 30 天下载量：5023（2026-10-12 至 2026-11-10，npm 官方下载统计）
- 已发布版本数：21（近 12 个月 1 个）

## 中文简介

一个安全而方便的JSON-LD文档加载器,用于Node.js,浏览器和React Introduct.

## 安装

```sh
npm install @digitalcredentials/security-document-loader
```

也可以使用：`pnpm add @digitalcredentials/security-document-loader`、`yarn add @digitalcredentials/security-document-loader`、`bun add @digitalcredentials/security-document-loader`

## README

# JSON- LD 文档装入器 _(@数字证书/安全-文件装入器)_

[![Build status](https://img.shields.io/github/actions/workflow/status/digitalcredentials/security-document-loader/main.yml?branch=main)](https://github.com/digitalcredentials/security-document-loader/actions?query=workflow%3A%22Node.js+CI%22) [![NPM Version](https://img.shields.io/npm/v/@digitalcredentials/security-document-loader.svg)](https://npm.im/@digitalcredentials/security-document-loader)

> 一个安全而方便的JSON-LD文档加载器,用于Node.js,浏览器和React Introduct.

## 目录

-   [背景情况](https://npmcn.com/package/%40digitalcredentials/security-document-loader/#readme-background)
-   [警卫](https://npmcn.com/package/%40digitalcredentials/security-document-loader/#readme-security)
-   [安装](https://npmcn.com/package/%40digitalcredentials/security-document-loader/#readme-install)
-   [使用量](https://npmcn.com/package/%40digitalcredentials/security-document-loader/#readme-usage)
-   [贡献](https://npmcn.com/package/%40digitalcredentials/security-document-loader/#readme-contribute)
-   [许可证](https://npmcn.com/package/%40digitalcredentials/security-document-loader/#readme-license)

## 背景情况

包含的功能 :

-   封装上下文 :
    -   Did, VC 1.0, DCC, 打开徽章 v3, ed25519 和 x25519 密码套件上下文
-   解析器用于 `did:key` 财务报告和审定财务报表 `did:web`
-   可选地从网络上加载任意背景(参见 Usage).

## 警卫

传统发展

## 安装

-   建议节点.js 16+.

### 国家预防机制

通过国家预防机制安装:

```
npm install @digitalcredentials/security-document-loader
```

### 发展

在当地安装(用于开发):

```
git clone https://github.com/digitalcredentials/security-document-loader.git
cd security-document-loader
npm install
```

## 使用量

要获得默认的文档加载器( 包含捆绑上下文的库存) :

```js
import { securityLoader } from '@digitalcredentials/security-document-loader'

const documentLoader = securityLoader().build()
```

添加其他上下文:

```js
import { securityLoader } from '@digitalcredentials/security-document-loader'

const loader = securityLoader()
loader.addStatic('https://example.com/my-context/v1', contextObject)

const documentLoader = loader.build()
```

### 从网络获取

允许从网络获取任意背景( 如果您可以, 不推荐) 避开它:

```js
const documentLoader = securityLoader({ fetchRemoteContexts: true }).build()
```

### 支持的 URL 协议处理器

在框外,此库支持加载以下文档:

-   从静态本地缓存中明确添加 URL( 即您需要的) 明确通过 `loader.addStatic`(中文(简体) )
-   文件是否使用 `did:key` 财务报告和审定财务报表 `did:web` 方法。 。 .

另外,如果你的用例允许的话,你可以启用 `fetchRemoteContexts`, (中文(简体) ), 将使用 `http` 财务报告和审定财务报表 `https` 协议(见 上一节).

#### 添加自定义协议处理器

有时您需要与其他 URL 协议一起添加文档 。 如果你有的话 解决这些协议的内部代码(例如,你可以获取一些 `urn:` 来自本地数据库的文档,您可以编写自定义协议 处理器 :

```js
import { securityLoader } from '@digitalcredentials/security-document-loader'

function getDocument (url) {
  // Some internal function that fetches or creates documents
}

const customResolver = {
  /**
   * @param {object} options - Options hashmap.
   * @param {string} options.url - Document URL (here `urn:...` key id)
   * @returns {Promise<object>} - Resolves with key object document.
   */
  async get(params: Record<string, string>): Promise<unknown> {
    let document
    try {
      document = await getDocument(params.url)
    } catch(e) {
      throw new Error('NotFoundError')
    }

    return document
  }
};

// For example, use your `getDocument` function to resolve all `urn:` URIs:
securityLoader.setProtocolHandler({protocol: 'urn', handler: customResolver})

const documentLoader = securityLoader().build()
```

## 贡献

公关接受.

请遵照 [标准读取](https://github.com/RichardLitt/standard-readme) 规格.

## 许可证

[MIT 许可证](https://npmcn.com/package/%40digitalcredentials/security-document-loader/LICENSE.md) 2022数字地证集团.

## 常见问题

### @digitalcredentials/security-document-loader 是什么？

一个安全而方便的JSON-LD文档加载器,用于Node\.js,浏览器和React Introduct\.

### 如何安装 @digitalcredentials/security-document-loader？

在项目目录运行 npm install @digitalcredentials/security-document-loader，或使用 pnpm add / yarn add / bun add。

### @digitalcredentials/security-document-loader 支持 TypeScript 吗？

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

### @digitalcredentials/security-document-loader 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @digitalcredentials/security-document-loader 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=16\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @digitalcredentials/security-document-loader 可以商用吗？

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

### @digitalcredentials/security-document-loader 的下载量有多少？

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

### @digitalcredentials/security-document-loader 还在维护吗？

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

