You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Shopify应用PostgreSQL Session Storage配置失败求助

问题根源

你遇到的错误是因为使用的@shopify/shopify-api版本和参考的文档版本不匹配:

  • 你参考的文档对应v6及更早的版本,这类版本中PostgreSQLSessionStorage嵌套在Shopify.Auth.Session下
  • 当前你使用的是v7+版本,该版本对存储类的结构做了扁平化调整,PostgreSQLSessionStorage不再挂载在Auth.Session路径下,直接作为包的顶级导出存在
解决方案

方案1:适配v7+版本(推荐)

首先确保安装PostgreSQL依赖包:

npm install pg

然后使用正确的导入和初始化方式:

import Shopify, { PostgreSQLSessionStorage } from '@shopify/shopify-api';

Shopify.Context.initialize({
  // 方式1:用连接字符串初始化
  SESSION_STORAGE: new PostgreSQLSessionStorage("postgres://username:password@host/database"),
  // 方式2:用独立参数初始化
  // SESSION_STORAGE: PostgreSQLSessionStorage.withCredentials(
  //   "host.com",
  //   "thedatabase",
  //   "username",
  //   "password",
  // ),
  // 补充其他必填配置项
  API_KEY: '你的API密钥',
  API_SECRET_KEY: '你的API密钥',
  SCOPES: ['read_products', 'write_orders'], // 按需修改权限
  HOST_NAME: '你的应用域名',
});

方案2:降级到旧版本(不推荐,仅兼容旧代码)

如果你想继续沿用文档中的写法,可以降级到v6.x版本:

npm install @shopify/shopify-api@6

降级后即可按照你参考的文档代码完成配置。

额外说明

v7+版本的@shopify/shopify-api对模块结构做了大量优化,所有会话存储类(包括PostgreSQL、MySQL、Redis等)都改为顶级导出,避免了深层嵌套的路径问题,同时也优化了类型定义。

内容的提问来源于stack exchange,提问作者InquisitiveTom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 17:36:22