2022-04-28 09:41:13 - 米境通跨境電商
我正在嘗試使用名為shopify-node-api的npm軟件包制作NodeJS應(yīng)用程序。
請注意,這是在Shopify合作伙伴帳戶中生成的私有應(yīng)用。我已經(jīng)按照文檔的說明通過了shopName,apiKey和password。
constShopify=require('shopify-api-node');
constshopify=newShopify({
shopName:'your-shop-name',
apiKey:'your-api-key',
password:'your-app-password'
});
但是,當(dāng)嘗試執(zhí)行類似于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應(yīng)用程序/JavaScript專家,請?zhí)峁┪宜雎缘慕ㄗh?
2個答案:
答案0:(得分:1)
最終,我的錯誤是使用這些綁定錯誤地使用了API調(diào)用。
代替:
shopify.product.get()
.then(products=>res.send(products))
.catch(err=>res.send(err));
我應(yīng)該一直使用這個:
shopify.product.list()
.then(products=>res.send(products))
.catch(err=>res.send(err));
答案1:(得分:0)
檢查API密鑰,以確保已賦予它訪問產(chǎn)品所需的范圍。未能要求提供產(chǎn)品的讀/寫范圍將是401的一個很好的線索。或者您沒有按照商店提供給您的信息傳遞api密鑰和密碼。