SuperAPI AI 工具集

inngest-middleware

编程与开发

查看项目

更新于 10-15 23:33

技能介绍

该技能聚焦 Inngest 中间件的使用,用于在客户端生命周期中处理横切关注点。用途包括可观测性(日志、追踪、指标)、依赖注入、数据转换(加解密、校验、补充数据)、错误处理与认证授权。中间件可注册在客户端级(影响所有函数)或函数级(影响特定函数),执行顺序为先客户端后函数级,并按规定次序运行。自定义中间件通过 InngestMiddleware 的 init 定义,可在 onFunctionRun 中提供 beforeExecution、afterExecution、transformOutput,在 onSendEvent 中提供 transformInput。官方提供独立包中间件,例如依赖注入 dependencyInjectionMiddleware(内置于 inngest),以及需单独安装的加密中间件 @inngest/middleware-encryption(自动加密步骤数据、函数输出与事件数据,支持 fallbackDecryptionKeys 轮换密钥)和 Sentry 中间件 @inngest/middleware-sentry(需 @sentry/* 8.0.0 以上)。常见模式包含指标与性能统计、认证校验、条件逻辑、熔断等。作者建议每个中间件只处理一个关注点;可选遥测可降级,而认证、授权、校验与加密失败必须采取失败关闭策略。测试可使用 createMockContext、createMockFunction。文档以 TypeScript 为主,Python 或 Go 请参考 Inngest 官方文档的语言指引;示例代码仅作说明,实际实现细节与完整模式需查阅参考资料。