首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >getaddrinfo ENOTFOUND错误购物getSubscriptionUrl购物管理API getaddrinfo

getaddrinfo ENOTFOUND错误购物getSubscriptionUrl购物管理API getaddrinfo
EN

Stack Overflow用户
提问于 2021-01-09 11:41:04
回答 1查看 528关注 0票数 0

我正在尝试设置一个用React/Node编写的购物循环订阅应用程序,但是当我从我的server.js调用以下代码时,我得到了一个FetchError

错误:

代码语言:javascript
复制
FetchError: request to https://[ACCESS_TOKEN]/admin/api/2020-10/graphql.json failed, reason: getaddrinfo ENOTFOUND [ACCESS_TOKEN]
  at ClientRequest.<anonymous> (/Users/cormachayden/Desktop/apps/easy-tok/node_modules/node-fetch/lib/index.js:1461:11)
  at ClientRequest.emit (events.js:315:20)
  at TLSSocket.socketErrorListener (_http_client.js:469:9)
  at TLSSocket.emit (events.js:315:20)
  at emitErrorNT (internal/streams/destroy.js:106:8)
  at emitErrorCloseNT (internal/streams/destroy.js:74:3)
  at processTicksAndRejections (internal/process/task_queues.js:80:21)

我的代码:

代码语言:javascript
复制
  const getSubscriptionUrl = async (accessToken, shop, returnUrl = process.env.HOST) => {
  const subscirptionQuery = JSON.stringify({
    query: `mutation {
      appSubscriptionCreate(
        name: "Easy Tok Premium"
        lineItems: {
          plan: {
            appRecurringPricingDetails: {
              price: { amount: 4.0, currencyCode: USD}
            }
          }
        }
        test: true
        returnUrl: "https://${shop}.myshopify.com/admin/apps/easy-tok"
      ) {
        confirmationUrl
      }
    }`
  });

  const response = await fetch(`https://${shop}/admin/api/2020-10/graphql.json`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      "X-Shopify-Access-Token": accessToken,
    },
    body: subscirptionQuery
  })

  const responseJson = await response.json();
  return responseJson.data.appSubscriptionCreate.confirmationUrl;
};

module.exports = getSubscriptionUrl;

在本地和部署到Heroku时都会出现相同的错误

EN

回答 1

Stack Overflow用户

发布于 2021-01-10 02:06:48

您的shop变量将返回您的AccessToken而不是shop_name.myshopify.com。所以你的请求变成了https://ACESS_TOKEN/admin/api/2020-10/graphql.json,这是无效的。

请仔细检查您的shop变量以及您在何处设置该变量,并立即生成一个新的访问令牌,因为您不应不惜任何代价公开提供您的AccessToken。

PS:出于安全原因,我编辑了您的问题以删除令牌!(请记住,历史仍将保留,请更改)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65639127

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档