@clerk/hono

中文文档
0.1.100发布于 2026/11/14MITTypeScriptESM + CJS构建来源已验证近 30 天下载 33.2万

贺野的SDK办事员

中文使用文档
文档目录13 节
  1. 开始
  2. 先决条件
  3. 安装
  4. 配置
  5. 使用量
  6. 访问办事员客户端
  7. 使用 acceptsToken 用于机器认证
  8. Webhook 验证
  9. 支助
  10. 社区
  11. 捐款
  12. 警卫
  13. 许可证


@ clerk/ hono (韩语)

Chat on Discord Clerk documentation Follow on X

更改日志 • 妇女 报告错误 • 妇女 请求特性 • 妇女 找人帮忙

开始

办事员 是将认证和用户管理添加到您的Hono应用程序中的最简单方式。 在您的应用程序中添加签名、 签名和配置管理 .

先决条件

  • 浩诺4+
  • 节点.js >=20.9.0 或稍后时间

安装

npm install @clerk/hono

配置

将您的 Clerk API 密钥设定为环境变量 :

CLERK_SECRET_KEY=sk_****
CLERK_PUBLISHABLE_KEY=pk_****

使用量

import { Hono } from 'hono';
import { clerkMiddleware, getAuth } from '@clerk/hono';

const app = new Hono();

// Apply Clerk middleware to all routes
app.use('*', clerkMiddleware());

// Public route
app.get('/', c => {
  return c.json({ message: 'Hello!' });
});

// Protected route
app.get('/protected', c => {
  const { userId } = getAuth(c);

  if (!userId) {
    return c.json({ error: 'Unauthorized' }, 401);
  }

  return c.json({ message: 'Hello authenticated user!', userId });
});

export default app;

访问办事员客户端

您可以直接从上下文访问 Clave 后端 API 客户端 :

app.get('/user/:id', async c => {
  const clerkClient = c.get('clerk');
  const user = await clerkClient.users.getUser(c.req.param('id'));
  return c.json({ user });
});

使用 acceptsToken 用于机器认证

app.get('/api', c => {
  const auth = getAuth(c, { acceptsToken: 'api_key' });

  if (!auth.userId) {
    return c.json({ error: 'Unauthorized' }, 401);
  }

  return c.json({ message: 'API access granted' });
});

Webhook 验证

import { Hono } from 'hono';
import { verifyWebhook } from '@clerk/hono/webhooks';

const app = new Hono();

app.post('/webhooks/clerk', async c => {
  const evt = await verifyWebhook(c);

  switch (evt.type) {
    case 'user.created':
      console.log('User created:', evt.data.id);
      break;
    // Handle other event types...
  }

  return c.json({ received: true });
});

支助

帮帮忙,来看我们 支持页面。 。 。 .

社区

加入我们 Discord 社区 连接到其他开发者.

捐款

我们欢迎所有社区的贡献! 如果你想以任何方式作出贡献,请阅读 我们的捐款准则 财务报告和审定财务报表 行为守则。 。 。 .

警卫

@clerk/hono 遵循安全方面的良好做法,但不能保证100%的安全.

@clerk/hono 提供 "就这样" 没有 保证. 冒险使用.

欲了解更多信息并报告安全问题,请参见我们 安全记录。 。 。 .

许可证

本项目根据以下规定获得许可证: 麻省理工学院许可证。 。 。 .

见 自由主义 更多信息.

版本与发布记录

@clerk/hono 共发布 1,957 个版本,首次发布于 2026/02/11;过去 12 个月发布了 1957 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.1.100latest2026/11/14今天
0.1.101-canary.v20261114000949canary2026/11/14今天
0.1.100-canary.v202611132355002026/11/14今天
0.1.100-canary.v202611132203122026/11/14今天
0.1.100-canary.v202611131952462026/11/14今天
0.1.100-canary.v202611131936102026/11/14今天

其他发布通道:snapshot → 0.1.99-snapshot.v20261112232106,canary → 0.1.101-canary.v20261114000949。

关于 @clerk/hono 的常见问题

@clerk/hono 是什么?

贺野的SDK办事员

如何安装 @clerk/hono?

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

@clerk/hono 支持 TypeScript 吗?

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

@clerk/hono 支持 ESM 还是 CommonJS?

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

@clerk/hono 需要什么版本的 Node.js?

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

@clerk/hono 可以商用吗?

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

@clerk/hono 的下载量有多少?

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

@clerk/hono 还在维护吗?

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