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

Posted

技术标签:

【中文标题】Shopify StoreFront API GraphQL 查询不返回任何内容【英文标题】:Shopify StoreFront API GraphQL query returns nothing 【发布时间】:2019-03-30 21:48:28 【问题描述】:

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


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

所以我调查了一下以了解发生了什么,然后我去了 Shopify 帮助中心,关注 this quick tuto 并在我客户的商店和我自己新创建的免费测试商店中复制了它。 这是我遵循的步骤:

    创建一个名为“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 Header 设置为:X-Shopify-Storefront-Access-Token:<API key>

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


  shop 
    name
  

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


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

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

我怎么了?

【问题讨论】:

【参考方案1】:

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

【讨论】:

以上是关于Shopify StoreFront API GraphQL 查询不返回任何内容的主要内容,如果未能解决你的问题,请参考以下文章

javascript 使用Vanilla JavaScript Shopify GraphQL Storefront API

React Native Shopify StoreFront API GraphQL API 无限加载产品 fetchMore 错误

Storefront API:查询可变参数?

Shopify - 使用 Shopify API 的新订单 - 如何了解税费和运费?

Shopify API跨域Ajax请求

Shopify API 跨域 Ajax 请求