SuperAPI AI 工具集

shopify-sdk-patterns

编程与开发

查看项目

更新于 10-15 23:29

技能介绍

用途:为 @shopify/shopify-api 提供生产级实现模式,面向开发与维护 Shopify 应用的工程场景,重点解决类型安全、会话管理与大规模数据访问问题。

主要能力:

  1. 类型化 GraphQL 客户端:用 LATEST_API_VERSION 初始化单例 shopifyApi,按店铺缓存会话,暴露 shopifyQuery<T>() 包装 client.request()。
  2. 错误处理:ShopifyServiceError 区分可重试错误(429、5xx)与永久错误,handleShopifyError() 做错误转换,safeShopifyCall() 返回 {data, error} 元组而非抛出异常。
  3. 游标分页:异步生成器 paginateShopify<T>() 支持 Relay 风格分页,按 pageInfo.endCursor 跟随直至 hasNextPage 为 false。
  4. 多租户工厂:ShopifyClientFactory 为多店铺应用按商户创建隔离 GraphqlClient,含 removeClient() 用于卸载时驱逐。
  5. 代码生成类型:使用 @shopify/api-codegen-preset 从 GraphQL 操作生成 TypeScript 类型,需在修改操作或升级 API 版本后运行 npx graphql-codegen。
  6. 批量操作:针对 10 万条以上记录,用 Bulk Operations API 服务端执行并轮询直至完成,返回 JSONL 下载 URL 后自行 fetch 解析。
  7. Webhook 注册:以 webhookSubscriptionCreate 加类型化 WebhookSubscriptionInput 程序化注册订阅,支持 HTTP 与 EventBridge/PubSub 端点。

前置条件:安装 @shopify/shopify-api v9+,熟悉 Shopify GraphQL Admin API,理解 async/await 与 TypeScript 泛型。

限制:批量操作对大结果集通常需轮询 1–10 分钟;API 版本需按季度更新;资料未提供具体价格、平台支持范围或其他未述信息。