fetch 的边缘运行时,同时提供 ES 模块和 CommonJS 两种构建,且没有运行时依赖。各 SDK 的共同内容请参阅服务端 SDK 概览。
安装
@didit-protocol/sdk-node。其源代码和更新日志位于 GitHub 上的 didit-protocol/sdk-node。
配置客户端
在 Node.js、Bun 和 Deno(需要--allow-env)上,new Didit() 会从环境变量中读取 DIDIT_API_KEY。边缘运行时没有进程环境,因此需要通过选项传入密钥:new Didit({ apiKey: env.DIDIT_API_KEY })。您可以传入选项来覆盖默认值,也可以设置组织 ID 和应用 ID,这是应用级调用(案件、网络、监管报告)所必需的。超时时间以毫秒为单位。
const { Didit } = require("@didit-protocol/sdk-node");。
创建会话
为工作流创建一个验证会话,并将用户引导至该会话的 URL。请求字段保留 API 原有的名称。读取决策结果
用户完成操作后(或 Webhook 到达时),读取决策结果。每个功能结果都是一个列表,每个工作流节点对应一个条目,日期时间均为Date 对象。
验证 Webhook
请传入原始请求体(而非解析后的 JSON)以及请求头:可以是 Node.js 或 Express 的req.headers 对象、Fetch 的 Headers 对象,或 [name, value] 键值对(WebhookHeaders 类型)。verify 返回一个 Promise,对于任何不是有效且未过期的投递,都会以 WebhookVerificationError 拒绝。
express.raw({ type: "application/json" }) 读取请求体,并调用 handleWebhook(req.body, req.headers)。轮换密钥期间,请同时传入两个密钥:[newSecret, oldSecret]。有关事件和签名方案,请参阅 Webhook。
筛查交易
将支付、提现或加密货币转账提交至交易监控,响应中包含其状态和风险评分。验证 Authentication token
Authentication 可在您的后端检查您的 Authentication 颁发方签发的访问 token,无需为每个请求调用 Didit。它还可以交换授权码、刷新 token、检查和撤销会话,并执行升级验证。
token 验证会根据您应用的颁发方和签名密钥,执行 在您的服务器上验证 token 中描述的检查。