我正在尝试使用名为shopify-node-api的npm软件包制作NodeJS应用程序。
请注意,这是在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应用程序/ JavaScript专家,请提供我所忽略的建议?
答案 0 :(得分:1)
最终,我的错误是使用这些绑定错误地使用了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));
答案 1 :(得分:0)
检查API密钥,以确保已赋予它访问产品所需的范围。未能要求提供产品的读/写范围将是401的一个很好的线索。或者您没有按照商店提供给您的信息传递api密钥和密码。