大数跨境

使用新的官方包在 PHP 和 Python 中构建 Shopify 应用

使用新的官方包在 PHP 和 Python 中构建 Shopify 应用 Shopify电商独立站
2026-08-26
0
导读:Shopify 现发布用于构建应用的官方开源 PHP 和 Python 包。shopify/shopify-app-php 在 Packagist 以及 shopifyapp 在 PyPI 上均已达到
Shopify 发布官方 PHP 和 Python 应用包

Shopify 现在发布了用于构建 PHP 和 Python 应用的官方开源包。shopify/shopify-app-php 在 Packagist 上以及 shopifyapp 在 PyPI 上均已达到 1.0 版本。 shopify/shopify-app-php 在 Packagist 和 shopifyapp 在 PyPI 已达到版本 1.0。

它们提供与框架无关的原语,用于请求验证、令牌交换和管理员 GraphQL 请求。如果您使用 PHP 或 Python 构建应用,现在即可采用这些包。

变更内容

两个新包现已全面可用:

composer require shopify/shopify-app-phppip install shopifyapp

两者都暴露相同的原语,因此您可以按需组合所需的功能,而无需采用完整的框架:

  • 针对 Webhook、App Home 和 App Bridge 请求、应用代理请求以及 Checkout、POS、Admin、Customer Account 和 Flow 扩展请求的请求验证
  • 令牌交换,包括客户端凭证和刷新已交换的访问令牌
  • 具有自动重试处理功能的管理员 GraphQL 客户端

它们支持任何技术栈,包括 Laravel、Symfony、Django、FastAPI,或纯 PHP 和 Python。

之前的 shopify-api-php 和 shopify_python_api 库现已弃用。它们仍可继续使用,但不会再获得新功能或安全修复。

shopify-api-php 在 Packagist 上被标记为废弃,shopify_python_api 在 PyPI 上被标记为不活跃。两者均引导开发者使用新的软件包。

受影响对象

这会影响使用 PHP 或 Python 开发 Shopify 应用的开发者。

使用 Node.js 或 Ruby 库构建的应用不受影响,React Router 仍然是大多数新应用推荐的路径。

已使用旧版库的应用可继续正常运行,无需立即采取任何操作。

为何重要

这些包体积小且功能明确。每个基础组件对应安全设置中的一个步骤,使流程在代码中清晰可见,便于你或 AI 工具理解。

它们在多语言间保持一致。两个包实现相同的接口并运行相同的测试套件,因此对其中一个的改进也能惠及另一个。

它们旨在支持渐进式采用,因此你可以一次迁移一个路由,而无需重写整个应用。

该怎么做

目前没有提供 PHP 或 Python 的应用模板。相反,你需要自行搭建项目结构,并根据需要组合使用这些基础组件。

每个软件包的 README 文档记录了所有基础操作,并可在搭建应用时作为上下文提供给 AI 编码工具。

如果你正在启动一个新的 PHP 或 Python 应用:

  1. 安装适用于你所用语言的包。
  2. 使用你首选的框架或技术栈来搭建项目结构。
  3. 组合所需的基础组件,例如先验证传入的请求,然后再交换令牌。
  4. 确认请求能够成功验证,并且在开发商店中令牌交换能返回访问令牌。

PHP 使用示例:

$shopify = new Shopify\App\ShopifyApp($clientId, $clientSecret); $result = $shopify->verifyAppHomeReq($request);

此示例验证了 App Home 请求。成功后,$result 提供已验证的 $result->shop 和 $result->idToken,你可将其交换为访问令牌。它还包含日志和返回给客户端的响应。

请使用与你处理界面相匹配的 verify... 方法,并直接使用这些值,而无需自行解析或重新验证请求。

如果你正在维护使用 shopify-api-php 或 shopify_python_api 的应用,则没有强制迁移或移除日期。当你准备好时,请遵循新软件包 README 中的升级说明并逐步迁移。

相关文档

  • Shopify 库和模板
  • Admin GraphQL API 参考
  • 位于 GitHub 上的 shopify-app-php GitHub
  • 位于 GitHub 上的 shopify-app-python GitHub
【声明】内容源于网络
0
0
Shopify电商独立站
1234
内容 7146
粉丝 0
Shopify电商独立站 1234
总阅读87.4k
粉丝0
内容7.1k