用途:构建扩展 Shopify Admin 功能的公开或自定义应用,尤其是从 Shopify App Store 安装的嵌入式应用,或把旧 Express/Koa 应用迁移到现代 Remix 技术栈。
主要能力:Shopify CLI 3.x 的 Remix 模板自动处理 OAuth 令牌交换、会话存储与 App Bridge 初始化;@shopify/shopify-app-remix 负责 OAuth 流程;通过 authenticate.admin 保护路由并调用 Admin GraphQL API;用 Polaris 组件与 App Bridge 构建原生感 UI,支持 Toast、Resource Picker 等;在 shopify.app.toml 配置访问范围与 webhook。
使用方式:安装 CLI 并初始化项目:npm install -g @shopify/cli @shopify/theme;shopify app init my-shopify-app(选择 Remix 模板);shopify app dev 会通过 Cloudflare 隧道并在开发商店安装应用。在 app/shopify.server.ts 中配置 shopifyApp(apiKey、apiSecretKey、apiVersion、scopes、sessionStorage 等)。需要 Admin API 的 loader/action 调用 authenticate.admin(request),再用 admin.graphql 发起查询或变更。生产部署用 shopify app deploy 部署函数/扩展,Remix 服务器单独部署(如 fly launch、fly deploy)。
适用场景:需要访问 Admin API、实现 OAuth 与会话持久化、构建商家工具、处理应用卸载与重装、GDPR 强制 webhook 等。
限制与注意:默认 SQLite 会话存储不适合多实例部署,生产建议 Prisma + PostgreSQL;只申请最小 scopes;用 App Bridge 处理导航与弹窗,避免直接 window.location;校验 webhook HMAC;开发用 LATEST_API_VERSION,生产固定版本;需处理 payment_required 错误。常见问题包括 CSP frame-ancestors 配置、OAuth 重定向循环、会话丢失、useAppBridge 返回 null、webhook 未触发、HMAC 无效等。资料未提供具体收费、价格或效果数据。