Shopify StoreFront API GraphQL查询不返回任何内容

时间:2018-10-26 07:24:34

标签: graphql shopify gatsby storefront graphiql

我正在尝试让客户使用Gatsby建立自己的Shopify商店。我使用了该gatsby-source-shopify2插件,并且总是收到类似这样的错误消息:

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

因此,我进行了一些调查以了解发生了什么,然后我进入Shopify帮助中心,跟随this quick tuto并在客户的商店和我自己新创建的免费测试商店中进行了复制。 这是我遵循的步骤:

  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端点设置为https://my-store.myshopify.com/api/graphql
  8. 将唯一的HTTP标头设置为:X-Shopify-Storefront-Access-Token<API key>

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

{
  shop {
    name
  }
}

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

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

我也在gatsby中尝试过,很显然再次出现了相同的错误。

我怎么了?

1 个答案:

答案 0 :(得分:0)

好吧,我的错误,我走得很快:在私人应用程序中,您有很多键:<API key><shared secret><API Storefront access token>。我使用了<API key>而不是<API Storefront access token>。现在一切正常...