用途:在 Node.js / TypeScript 服务端应用中接入 Temps 平台能力,包括调用平台 REST API、键值存储与文件存储,以及服务端错误追踪。
主要能力与包: @temps-sdk/node-sdk:基于 OpenAPI 生成的平台 API 客户端(hey-api)+ Sentry 风格的服务端错误追踪(ErrorTracking)。 @temps-sdk/kv:Vercel-KV 风格键值存储。 @temps-sdk/blob:Vercel-Blob 风格文件存储。 注意:不存在 @temps-sdk/node 包。
安装: npm install @temps-sdk/node-sdk npm install @temps-sdk/kv npm install @temps-sdk/blob
平台 API 客户端用法:用 TempsClient 构造,配置为 { baseUrl, apiKey }(非 { apiKey, projectId })。资源通过命名空间调用,如 temps.projects、temps.deployments、temps.analytics、temps.domains、temps.crons、temps.auditLogs 等。返回 hey-api 结构 { data, error, request, response },使用 data 前需检查 error。没有顶层 temps.track()/temps.identify()。方法名为生成式,应查 package/dist/index.d.ts 或 client/sdk.gen.d.ts。
错误追踪:node-sdk 导出 Sentry 兼容的 ErrorTracking(DSN 方式),可 init、captureException、captureMessage、setUser、addBreadcrumb、startTransaction。多数场景推荐独立 add-error-tracking 技能配合 @sentry/node 指向 Temps DSN。
KV 用法:默认 kv 实例从 TEMPS_API_URL、TEMPS_TOKEN、TEMPS_PROJECT_ID 读取配置;支持 set(含 { ex } / { px } 过期)、get、incr、expire、ttl、del、keys。也可用 new KV({ apiUrl, token, projectId: 42 }),projectId 为数字。无 kv.has()、kv.list()、{ ttl } 选项;错误抛 KVError。
Blob 用法:默认 blob 实例或 new BlobClient({ apiUrl, token, projectId })。方法为 put / del / head / list / download / copy。put 返回 BlobInfo,download 返回 fetch Response 需自行消费。无 blob.get()、getStream()、getSignedUrl()、createUploadUrl();错误抛 BlobError。
环境变量:TEMPS_API_URL(三者)、TEMPS_API_KEY(TempsClient)、TEMPS_TOKEN(kv、blob)、TEMPS_PROJECT_ID(kv、blob)、SENTRY_DSN(ErrorTracking)。在 Temps 部署上关联服务后可能自动注入,硬编码前请检查项目环境变量。
限制与最佳实践:密钥/令牌不要硬编码;调用客户端前检查 error;存储调用捕获 KVError/BlobError;ErrorTracking.init() 在启动时、可能抛错代码之前调用一次;平台客户端接口由 OpenAPI 生成并可能变化,改 API 前应先确认。本技能资料未提供价格、收费或性能数据。