@crvouga/mockingbird-service-lifefile

中文文档
0.4.0发布于 2026/11/11MITTypeScriptES Module构建来源已验证近 30 天下载 2225

Best-guess LifeFile药店订单网关和 Basic-auth Data Push模拟器.

中文使用文档
文档目录7 节
  1. 安装
  2. 使用量
  3. 证据和选定的合同
  4. 故意不模拟
  5. 设置和测试控制
  6. API 密码
  7. 现场平等

@crvouga/ mockingbird-service-life文件 页面存档备份,存于互联网档案馆

本地模拟器。 真正的API合同. 部分 嘲笑鸟。 。 。 .

工作在建 LifeFile药房订单网关 用于合成融合测试. 这是一个 最好猜,不是甲骨文验证它模拟了订单提交、一意孤行、可配置的航运 拒绝,取消和基础-自动数据推出而不与药店联系.

安装

bun add -d @crvouga/mockingbird-service-lifefile

使用量

在本地服务器上标注您的应用程序的 LifeFile 基础 URL 。 保存真正的药房证书 和病人的检测结果.

import { createServer } from "@crvouga/mockingbird-service-lifefile/server"

const server = await createServer()
try {
  const response = await fetch(`${server.url}/order`, {
    method: "POST",
    headers: {
      authorization: `Basic ${btoa("test:test")}`,
      "content-type": "application/json",
      "X-Vendor-ID": "1",
      "X-Location-ID": "1",
      "X-API-Network-ID": "1",
    },
    body: JSON.stringify({
      message: { id: 1 },
      order: { general: { referenceId: "synthetic-order" }, shipping: { state: "AZ" } },
    }),
  })
  if (!response.ok) throw new Error(`Order refused: ${response.status}`)
  const result = await response.json()
  if (result.type !== "success" || !result.data?.orderId) {
    throw new Error(result.message ?? "Order rejected")
  }
  console.log(result.data.orderId)
} finally {
  await server.close()
}

证据和选定的合同

公众 启示药整合实例 为lifeFile 命令 API 提供主集成源: 基本认证, 三 整数 X-* 信头,命令创建,状态更新和一个数据Push接收器. 这是药店的 整合实例,并非完整的供应商规格。 报告消费者的客户和 响应计划 {type, message, data} 信封内, data.orderId数字 message.id, (中文(简体) ), order.general.referenceId 财务报告和审定财务报表 order.shipping.state 字段.

没有发现供应商现场回应。 同上,拒绝状态/信封细节,重复 取消处理、航运限制和推进时间是决定性的模拟者选择. 他们是 最好的猜测,不是甲骨文验证航运限制是配置的固定装置; 默认拒绝列表是空的,没有主张全球供应商运输政策.

POST /order 返回命令编号 data.orderId; 重复一个 message.id 重新使用其标识. 认证和信头/机构验证失败不会产生命令 。 模拟器存储 命令元数据,而不是病人、处方者或处方机构.

PUT /order/{id}/status 需要明确配置 cancelStatus。没有它,模拟器 返回一个不支持的明显错误(HTTP 501),没有状态变化。 这是模拟器 限制,不是观察到的生命文件错误。 用它, 配置状态是取消 定点合同; 未知订单和其他要求的状态在确定性上失败.

故意不模拟

实际处方处理、药房的完成、临床鉴定、付款、库存、, 特定账户的航运政策、生产证书和供应商综合计划. 报告所标注的JavaScript SDK没有官方的;接受使用取取取的消费者. 不要用这个模拟器来证明真正的药店接受或取消了订单.

设置和测试控制

createRuntime({settings, webhooks}) 财务报告和审定财务报表 createServer({settings, webhooks}) 接受:

设置默认行为
accounts[]没有固定装置,请接受任何非空的 Basic username/password. 否则需要精确配置 {username,password} 双人.
refusedShippingStates[]拒绝匹配 order.shipping.state 带有错误信封且未创建命令的值.
cancelStatusnull配置取消请求使用的确切状态字符串; 否则状态更新返回 501 .
pushFormat"consumer"暂定目标 {orderId, referenceId?, status}· ; "vendor" 选择以 orderId, (中文(简体) ), referenceId, (中文(简体) ), rxStatus, (中文(简体) ), rxStatusDateTime 根据公共药房演示。 先知也没有被证实.
pushBeforeResponsefalseFlush Data Push在启用时完成订单响应前的发送.

配置 webhooks: {url, username, password, fetch?} 为接收器。 可选 fetch 允许测试提供本地接收器。 生产证书是不必要的。 命令开始于 Received; 配置的取消过渡到 Cancelled自动推送和 状态过渡是模拟器固定行为。 重复命令提交重用 ID 创建另一个命令或发送第二个推动.

标准管理员前缀为 /__admin (与 adminPrefix) (中文(简体) ). 服务控制有:

路线行为
GET /orders仅限元数据命令日记.
GET /settings当前设置, 账户密码被省略 .
PUT /settings更新选定命名空间的已验证设置 .
POST /orders/:id/push改变状态并排队推动;身体 {status, duplicate?, badCredentials?}。 。 。 .

这些路线与管理员前缀相对. 标准控制包括: /requests, (中文(简体) ), /state, (中文(简体) ), /faults, (中文(简体) ), /webhooks/events 财务报告和审定财务报表 /webhooks/flush。 Webhook 日记记录交付元数据 和有效载荷中只包含建模命令元数据。 请求日志不保留命令正文 .

错误预设为 reject (商业错误信封), server_error (500个), malformed (无效) 贾森, duplicate_push 财务报告和审定财务报表 bad_push_credentials; 标准 timeout 还提供。 应用 一通经 POST /__admin/faults 与 {"preset":"reject"}。对于特定参考,使用 {"operationId":"CreateOrder","requestBody":{"order.general.referenceId":"synthetic-order"},"effect":"reject"}。 。 。 . 同名匹配者瞄准500/malform/超时规则. 拒绝创建的过失不留下命令 或推后脚. 重复和无效的驱动控制 有意进行接收器处理 .

命名空间 : x-mockingbird-namespace,按标准 /__admin/ns/<name>/ 前缀,或由 Basic 用户名在映射它之后 PUT /__admin/credentials。快照、重置和时光线历史使用共享运行时间.

API 密码

包根导出 LifeFileAPI, (中文(简体) ), createRuntime, (中文(简体) ), LIFEFILE_NAMESPACE, (中文(简体) ), basicUsername, (中文(简体) ), LIFEFILE_PRESETS, (中文(简体) ), document, (中文(简体) ), operationIds 财务报告和审定财务报表 supportedOperationIds。 。 。 . basicUsername(request) 提取证书命名空间载体. LifeFileAPI 用品 fetch, (中文(简体) ), reset 财务报告和审定财务报表 transition· ; createRuntime 添加标准管理员控件和 webhooks 中枢.

公共类型是: LifeFileAPIOptions, (中文(简体) ), PushOptions, (中文(简体) ), OrderRecord, (中文(简体) ), Settings, (中文(简体) ), OperationId, (中文(简体) ), SupportedOperationId, (中文(简体) ), LifeFileRuntime 财务报告和审定财务报表 LifeFileRuntimeOptions。 。 。 .

这个 ./server 进口 createServer, (中文(简体) ), serveTarget 财务报告和审定财务报表 DEFAULT_PORT (8819),加上类型 LifeFileServer 财务报告和审定财务报表 LifeFileServerOptions。 。 。 . createServer 监听本地端口 默认和返回 {url, close, runtime, ...}编辑 mockingbird-lifefile serve CLI 使用 固定默认端口. serveTarget 支持车队托管和共享管理员控制.

现场平等

bun run parity:service -- lifefile 报告缺少 沙盒证书的名称。 需要的密钥 为: LIFEFILE_API_URL, (中文(简体) ), LIFEFILE_USERNAME, (中文(简体) ), LIFEFILE_PASSWORD, (中文(简体) ), LIFEFILE_VENDOR_ID, (中文(简体) ), LIFEFILE_LOCATION_ID 财务报告和审定财务报表 LIFEFILE_API_NETWORK_ID,只存储在 GitHub 动作秘密中或 .env.local. 没有为这项执行工作提供任何资料。 每个模型操作都会影响 真正的药房队列; 等同脚本拒绝变异而不变异 --include-unsafe 还有一个 孤立的沙盒。 未提出现场对等要求.

版本与发布记录

@crvouga/mockingbird-service-lifefile 共发布 14 个版本,首次发布于 2026/10/22;过去 12 个月发布了 14 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.4.0latest2026/11/11今天
0.3.92026/11/038 天前
0.3.82026/11/038 天前
0.3.72026/11/038 天前
0.3.62026/11/038 天前
0.3.52026/11/038 天前

关于 @crvouga/mockingbird-service-lifefile 的常见问题

@crvouga/mockingbird-service-lifefile 是什么?

Best-guess LifeFile药店订单网关和 Basic-auth Data Push模拟器.

如何安装 @crvouga/mockingbird-service-lifefile?

在项目目录运行 npm install @crvouga/mockingbird-service-lifefile,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 mockingbird-lifefile,可以用 npx mockingbird-lifefile 直接运行。

@crvouga/mockingbird-service-lifefile 支持 TypeScript 吗?

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

@crvouga/mockingbird-service-lifefile 支持 ESM 还是 CommonJS?

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

@crvouga/mockingbird-service-lifefile 可以商用吗?

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

@crvouga/mockingbird-service-lifefile 的下载量有多少?

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

@crvouga/mockingbird-service-lifefile 还在维护吗?

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