尝试使用 nodejs 从 Shopify 获取分析数据

Trying to fetch Analytics data from Shopify with nodejs

我正在尝试使用 Nodejs 获取网站的分析数据,但遇到了困难。我正在关注 this tutorial,但有一个障碍,我需要一个访问令牌,为此,您似乎需要加入一个 Shopify 合作伙伴帐户,然后创建一个应用程序,然后生成一个 link商店需要安装才能获得访问令牌。

我只想访问商店的分析指标,以便我可以在其他地方使用这些数据。这是唯一的方法还是我做错了(如果是这样请发送帮助)

我也尝试过这个 https://github.com/lpinca/shopify-token 存储库来为商店生成访问令牌,但是如果我使用生成的访问令牌,那么我会得到它作为响应

data returned:
 {
  errors: '[API] Invalid API key or access token (unrecognized login or wrong password)'
}

到目前为止我的代码


const express = require("express");
const fetch = require("node-fetch");
const ShopifyToken = require('shopify-token');



const app = express();


app.get("/shop-info", (req, res) => {
    fetch(`https://SHOPNAMEHERE.myshopify.com/admin/api/graphql.json`, {
      method: "POST",
      headers: {
        "Content-Type": "application/json",
        "X-Shopify-Access-Token": process.env.ACCESSTOKEN
      },
      body: JSON.stringify({
        query: `{
           shop {
             name
             url
             email
             myshopifyDomain
           }
         }`
      })
    })
      .then(result => {
        return result.json();
      })
      .then(data => {
        console.log("data returned:\n", data);
        res.send(data);
      });
  });

app.listen(3000, () => console.log("Listening on port 3000 .... "));

您可以使用 shared secret 代码作为在商店本身创建私人应用程序后生成的 access token,而不是去整个合作伙伴帐户

请注意,这仅在您需要访问一个商店时才适用,如果它是多个商店,则建议使用合作伙伴路线方式