@crvouga/mockingbird-service-clerk (英语)
本地模拟器。 真正的API合同. 部分 嘲笑鸟。 。 。 .
OIDC发现,JWKS,OAuth授权/token/userinfo,用户,电子邮件地址,组织,成员,邀请,会话. 通过Mockingbird的便携式抓取运行时间,并带有SQLite坚持性,命名空间,检查站,断层和管理员控制等功能.
安装
npm install @crvouga/mockingbird-service-clerk
使用量
import { createServer } from "@crvouga/mockingbird-service-clerk/server"
const server = await createServer({ seed: 1 })
// The app's Backend API calls, with the emulator's URL in place of https://api.clerk.com.
const headers = { authorization: "Bearer sk_test_fixture", "content-type": "application/json" }
const created = await fetch(`${server.url}/v1/users`, {
method: "POST",
headers,
body: JSON.stringify({ email_address: ["[email protected]"], first_name: "Ada" }),
})
const user = (await created.json()) as { id: string; first_name: string }
const listed = await fetch(`${server.url}/v1/[email protected]`, { headers })
const { data } = (await listed.json()) as { data: { id: string }[] }
console.log(data[0]?.id === user.id) // true
await server.close()
示例使用平面 fetch 因为 @clerk/backend 只解析其回复
content-type 没错 application/json,模拟器则回答
application/json; charset=UTF-8与 createClerkClient({ secretKey, apiUrl: server.url }) 页:1
请求成功, 但资源作为未解析的 JSON 字符串返回 .
API 密码
ClerkAPI:便携式提供者实例;接受SQLite,命名空间,时钟,定着和基底Url.createRuntime:共享运行时间,包括本地命名空间和检查站控制.CLERK_NAMESPACE: 默认存储名空间.document, (中文(简体) ),operationIds, (中文(简体) ),supportedOperationIds: 注册供应商路线盘点.createServer, (中文(简体) ),DEFAULT_PORT, (中文(简体) ),serveTarget从/server:回放收听器和CLI配置.
fixtures 接受合成供应商种子记录. reset() 恢复默认值。 模拟0.12.1只是一个测试神谕,从来不是一个运行时间依赖. 在Apache-2.0下移植的供应商操作员保留其许可证和归属;见LICENSE EMULATE和TIII PARTY NOTICES.md.