首页 > 解决方案 > Shopify StoreFront API GraphQL 查询不返回任何内容

问题描述

我正在尝试让客户与 Gatsby 建立他的 Shopify 商店。我使用那个gatsby-source-shopify2插件,我总是有这样的错误消息:

{
  "errors": [
    {
      "message": "Cannot query field \"allShopifyProduct\" on type \"Query\".",
      "locations": [
        {
          "line": 2,
          "column": 3
        }
      ]
    }
  ]
}

因此,我进行了一些调查以了解发生了什么,然后我去了 Shopify 帮助中心,按照这个快速教程并在我客户的商店和我自己新创建的免费测试商店中复制了它。这是我遵循的步骤:

  1. 创建一个名为“my-store”的新商店
  2. 创建一个新产品
  3. 创建一个新的私人应用程序
  4. 选中该框Allow this app to access your storefront data using the Storefront API
  5. 复制 API 密钥
  6. 仔细检查私有应用程序是否已在 中签入Product Availability,以确保
  7. 打开 GraphiQL,并将 GraphQL Endpoint 设置为https://my-store.myshopify.com/api/graphql
  8. 将唯一的 HTTP 标头设置为X-Shopify-Storefront-Access-Token<API key>

然后我在查询字段中输入:

{
  shop {
    name
  }
}

令人惊讶的是,没有发生错误,但没有出现预期的输出。它应该是:

{
  "data": {
    "shop": {
      "name": "my-store",
    }
  }
}

我也在 gatsby 中试过,同样的错误又来了,很明显。

我是怎么了 ?

标签: graphqlshopifygatsbystorefrontgraphiql

解决方案


好的,我的错误,我跑得很快:在私人应用程序中,你有很多键<API key>:<shared secret><API Storefront access token>. 我用<API key>代替<API Storefront access token>。现在一切正常...


推荐阅读