SuperAPI AI 工具集

neon-webhooks

测试与质量

查看项目

更新于 10-15 22:14

技能介绍

用途:接收并验证 Neon Auth 发来的 Webhook,适合搭建 Neon Webhook 处理器、排查 Ed25519 / 分离式 JWS 签名校验失败,以及处理 Neon Auth 事件。

主要能力:Neon Auth 使用 EdDSA(Ed25519)以分离式 JWS 对每个 Webhook 签名,不使用共享密钥。验证时从 <NEON_AUTH_URL>/.well-known/jwks.json 获取公钥,并通过 X-Neon-Signature-Kid 请求头选择对应密钥。注意签名输入存在双重 base64url 编码,直接拼接 ${timestamp}.${body} 会一直失败;需使用原始请求体字节,且 X-Neon-Timestamp 单位为毫秒。常见事件包括阻塞型 send.otp、send.magic_link、user.before_create,以及非阻塞型 user.created、phone_number.verified。阻塞型事件会暂停认证流程直到端点返回 2xx 或超时。

使用方式:请求头包括 X-Neon-Signature(分离式 JWS,格式 header..signature)、X-Neon-Signature-Kid、X-Neon-Timestamp、X-Neon-Event-Type、X-Neon-Event-Id、X-Neon-Delivery-Attempt。环境变量只需 NEON_AUTH_URL,无签名密钥。可参考 examples/express/、examples/nextjs/、examples/fastapi/ 获取完整处理器。建议对时间戳做容差校验(如 5 分钟)防重放,并用 X-Neon-Event-Id 做幂等。本地开发可运行:npx hookdeck-cli listen 3000 neon --path /webhooks/neon。

限制:必须先验证再解析请求体;不要使用 svix 或 HMAC 模板。能力细节、收费与平台支持暂未提供。