我使用
npm init @shopify/app@latest
命令创建了一个 Shopify 应用程序,并尝试实现一项功能,用于侦听商店中创建新订单时触发的 Webhooks。
因此,我导航到
shopify.server.js
文件并在 webhooks 属性中包含以下代码:
ORDERS_CREATE: {
deliveryMethod: DeliveryMethod.Http,
callbackUrl: "/webhooks",
callback: async (topic, shop, body, webhookId) => {
console.log("--- Order create ---");
const payload = JSON.parse(body);
console.log(payload);
console.log("--- /Order create ---");
},
},
当然,我在
shopify.app.toml
中添加了此访问范围:
[access_scopes]
# Learn more at https://shopify.dev/docs/apps/tools/cli/configuration#access_scopes
scopes = "write_products,read_orders,write_orders"
当我更新产品时(为
PRODUCTS_UPDATE
设置了 Webhook),我可以看到 Webhook 被成功调用。但是,当我在仪表板的订单选项卡中手动创建订单时,我没有看到任何相应的 Webhook 请求。可能是什么问题,我该如何解决?
您可以查看 WebhookSubscriptionTopic 以了解访问范围https://shopify.dev/docs/api/admin-graphql/2023-07/enums/WebhookSubscriptionTopic。