baosfeng/my-dsh-plugins--plugins-dsh-shared ↗★ 5
dsh-shared
提供DSH插件开发所需的共享工具函数库。
AI 分析
适合DSH插件开发者,用于简化安全围栏、读写和配置持久化开发。
安裝
此插件尚未提供可驗證的 bundle,或相容性檢查未通過。請先閱讀倉庫說明。 閱讀完整 README ↗
說明文件
閱讀完整 README ↗使用
import { isTrustedApiRequest, readJsonBody, writeJson, createWriteScheduler, atomicWriteJson } from 'dsh-shared'
// 路由注册时用信任围栏过滤非可信来源
const fence = (request) => isTrustedApiRequest(request, ctx.webRuntime.trustedHosts)
// 状态快照落盘:调度器保证节奏,护栏兜底
const scheduler = createWriteScheduler({
logger: ctx.logger,
write: ({ force }) => atomicWriteJson(file, state, ctx.logger, '[my-plugin]', { force, maxBytes: 4 * 1024 * 1024 }),
})
scheduler.schedule() // 变更后调度(防抖合并)
await scheduler.drain() // 就绪信号:确定已落盘(测试用它替掉 sleep)
await scheduler.flush() // teardown:立即强写