Javascript shopify api节点返回私人应用程序的状态401 unauthorized
我正试图利用这个名为 请注意,这是在Shopify Partners帐户中生成的一个私人应用程序。我已经按照文档说明传递了Javascript shopify api节点返回私人应用程序的状态401 unauthorized,javascript,node.js,promise,shopify,shopify-app,Javascript,Node.js,Promise,Shopify,Shopify App,我正试图利用这个名为 请注意,这是在Shopify Partners帐户中生成的一个私人应用程序。我已经按照文档说明传递了shopName、apiKey和密码 const Shopify = require('shopify-api-node'); const shopify = new Shopify({ shopName: 'your-shop-name', apiKey: 'your-api-key', password: 'your-
shopName
、apiKey
和密码
const Shopify = require('shopify-api-node');
const shopify = new Shopify({
shopName: 'your-shop-name',
apiKey: 'your-api-key',
password: 'your-app-password'
});
但是,当尝试执行像这样简单的操作时,请执行以下操作:
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专家,请告知我忽略了什么?检查API密钥,确保您已为其提供访问产品所需的范围。未能请求产品的读/写范围将是关于401的一个很好的线索。或者您没有按照商店提供给您的信息传递api密钥和密码。最后,我的错误是使用这些绑定时不正确地使用了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));
“访问产品所需的范围”-这是Shopify Partners帐户内的设置还是Shopify api节点模块内的方法?您在交换oAuth令牌或单击peivate应用程序设置屏幕中的下拉菜单时设置范围,该屏幕为您提供商店本身的api密钥。我检查了商店的Shopify管理员帐户,应用程序权限为:读取产品,变体和集合。我还检查了Shopify合作伙伴的帐户,以验证私人应用程序的API密钥和API密钥是1:1 w/my code。还是不走运。我相信这更像是我在如何正确使用Shopify api节点库中的绑定方面遇到的一个学习曲线问题:您得到401的响应这一事实告诉您,您的api凭据没有被正确使用。浏览一下关于如何给Shopify打电话的文档,你很快就会一帆风顺。它非常简单,与其他1000万个API服务一样。