@bedrock/validation

中文文档
7.3.0发布于 2026/10/03ES Module近 30 天下载 2031

Bedrock 验证

中文使用文档
文档目录7 节
  1. 所需资源
  2. 快速示例
  3. 配置
  4. API 密码
  5. 创建 ValidateMiddleware ({querySchema: schema, bodySchema: sc…
  6. 获取Schema( 名称)
  7. 坚固( 坚固, 计划)

基础验证

A 类 基石 模块,用于提供快捷的中间软件和 API 验证数据结构及其内容. 基础验证 用途 基于 JSON 计划。 。 。 .

所需资源

该软件需要并支持维持的最近版本的Node.js和 浏览器. 更新可能会去除对旧的未维护的平台版本的支持. 请使用依赖性版本锁文件和测试以确保兼容性 与这个软件.

快速示例

npm install @bedrock/validation
import * as bedrock from '@bedrock/core';
import {postBarValidator, postBarQueryValidator} from '../schemas/my-schemas.js';
import {createValidateMiddleware as validate} from '@bedrock/validation';

// load schemas from '/foo'
bedrock.config.validation.schema.paths.push('/foo');

// add an express route with validation middleware
bedrock.events.on('bedrock-express.configure.routes', function(app) {
  app.post('/bar',
    // validate the query using the 'postBarQueryValidator'
    // validate the response body using the 'postBarValidator'
    validate({querySchema: postBarQueryValidator, bodySchema: postBarValidator}),
    function(req, res) {
      // do something
    });
});

bedrock.start();

配置

基础验证 将,在初始化时(通过 bedrock.init 事件, 读取在指定的路径列表中找到的任何计划 bedrock.config.validation.schema.paths。可以跳过单个计划 通过 bedrock.config.validation.schema.skip 配置选项。 如果有的话 计划名称与先前装入的计划相匹配, 它会覆盖 计划.

关于配置的更多文档,参见 配置( j)。 。 。 .

API 密码

创建 ValidateMiddleware ({querySchema: schema, bodySchema: schema})

这种方法都可以使用 query 或者说 body 定义.

该方法返回用于验证请求的表达式中间软件 使用与其中任何一项有关的计划 query 或者说 body。 。 。 .

获取Schema( 名称)

获取给定的验证计划 name 计划。 如果没有 计划存在, null 已返回.

坚固( 坚固, 计划)

验证 a instance (数据)针对 schema可使用这种方法 使用不一定通过 配置系统。 这个 schema 一定是个 JSON 计划 举个例子 这个 返回值将包含验证结果。 此函数返回 承诺:

{
  valid: <boolean>,
  error: <error> // only present when valid === false
}

版本与发布记录

@bedrock/validation 共发布 8 个版本,首次发布于 2022/04/02;过去 12 个月发布了 3 个版本。

版本发布日期距今
7.3.0latest2026/10/031 个月前
7.2.12026/09/181 个月前
7.2.02026/06/055 个月前
7.1.12024/11/152 年前
7.1.02022/10/174 年前
7.0.02022/04/294 年前

关于 @bedrock/validation 的常见问题

@bedrock/validation 是什么?

Bedrock 验证

如何安装 @bedrock/validation?

在项目目录运行 npm install @bedrock/validation,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@bedrock/core(^6.3.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@bedrock/validation 支持 TypeScript 吗?

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

@bedrock/validation 支持 ESM 还是 CommonJS?

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

@bedrock/validation 可以商用吗?

@bedrock/validation 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@bedrock/validation 的下载量有多少?

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

@bedrock/validation 还在维护吗?

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