graphql - Shopify StoreFront API GraphQL 查询不返回任何内容
问题描述
我正在尝试让客户与 Gatsby 建立他的 Shopify 商店。我使用那个gatsby-source-shopify2插件,我总是有这样的错误消息:
{
"errors": [
{
"message": "Cannot query field \"allShopifyProduct\" on type \"Query\".",
"locations": [
{
"line": 2,
"column": 3
}
]
}
]
}
因此,我进行了一些调查以了解发生了什么,然后我去了 Shopify 帮助中心,按照这个快速教程并在我客户的商店和我自己新创建的免费测试商店中复制了它。这是我遵循的步骤:
- 创建一个名为“my-store”的新商店
- 创建一个新产品
- 创建一个新的私人应用程序
- 选中该框
Allow this app to access your storefront data using the Storefront API
- 复制 API 密钥
- 仔细检查私有应用程序是否已在 中签入
Product Availability
,以确保 - 打开 GraphiQL,并将 GraphQL Endpoint 设置为
https://my-store.myshopify.com/api/graphql
- 将唯一的 HTTP 标头设置为
X-Shopify-Storefront-Access-Token
:<API key>
然后我在查询字段中输入:
{
shop {
name
}
}
令人惊讶的是,没有发生错误,但没有出现预期的输出。它应该是:
{
"data": {
"shop": {
"name": "my-store",
}
}
}
我也在 gatsby 中试过,同样的错误又来了,很明显。
我是怎么了 ?
解决方案
好的,我的错误,我跑得很快:在私人应用程序中,你有很多键<API key>
:<shared secret>
和<API Storefront access token>
. 我用<API key>
代替<API Storefront access token>
。现在一切正常...
推荐阅读
- reactjs - 如何使用 useState 钩子解决随机数组问题(React useState)?
- vba - 如何在添加记录之前检查表中的现有列?
- boolean - 如何设置字段私有布尔值设置为真?
- c# - 是否可以将 HttpResponseMessage json 转换为对象?
- android - 我在 recyclerview 中的适配器更改了 2 个项目而不是 1 个项目的背景颜色
- sql - 将外部数据添加到 sql 表
- javascript - 在表格中拖动图像 - 修复大小和每个图像
- machine-learning - 为什么我的变分自编码器无法学习
- react-native - 按下“react-native-svg”后消失
- numpy - 在数组中查找元组并获取其索引和值