shopify-api-node возвращает статус 401 неавторизованным для частного приложения - PullRequest
0 голосов
/ 20 февраля 2019

Я пытаюсь создать приложение NodeJS, использующее этот пакет npm под названием shopify-node-api

Обратите внимание, это приватное приложение, которое было сгенерированов аккаунте партнеров Shopify.Я прошел shopName, apiKey и password, как указано в документации.

    const Shopify = require('shopify-api-node');

    const shopify = new Shopify({
      shopName: 'your-shop-name',
      apiKey: 'your-api-key',
      password: 'your-app-password'
    });

Однако при попытке выполнить что-то столь же простое, как этот GET :

    shopify.product.get()
    .then(products =>  res.send(products))
    .catch(err => res.send(err));

Я получаю:

    {
        "name": "HTTPError",
        "hostname": "your-shop-name",
        "method": "GET",
        "path": "/admin/products.json",
        "protocol": "https:",
        "statusCode": 401,
        "statusMessage": "Unauthorized",
        "headers": {...}
    }

Длявсе специалисты Shopify App / JavaScript, пожалуйста, посоветуйте, что я пропускаю?

Ответы [ 2 ]

0 голосов
/ 21 февраля 2019

В конце дня моей ошибкой было неправильное использование вызова API из-за использования этих привязок.

Вместо:

 shopify.product.get()
.then(products =>  res.send(products))
.catch(err => res.send(err));

Я должен был использовать это:

shopify.product.list()
.then(products =>  res.send(products))
.catch(err => res.send(err));
0 голосов
/ 20 февраля 2019

Проверьте ключ API, чтобы убедиться, что вы дали ему объем, необходимый для доступа к продуктам.Если вы не запросите объем для чтения / записи на продуктах, это будет хорошим ключом к 401. Это или то, что вы не передаете ключ API и пароль в соответствии с тем, что представлено вам в магазине.

...