javascript - 如何在 Shopify 私有 APP 中发出 API 请求
问题描述
所以我正在使用 node.js 在 Shopify 中开发一个私有应用程序并做出反应,到目前为止,它只是一个向商店提交新产品的表单,非常简单,我意识到 Shopify 的 Admin API 不会让我作为私人应用程序提出请求,或者这就是我所理解的,显然解决方案与设置后端服务器有关,我不知所措,因为我使用 Shopify CLI 和为您设置了一个 ngrok 隧道服务器,我不确定是否需要设置另一个或下一步该做什么。它用这个过程搭建:https ://shopify.dev/apps/getting-started/create
本文描述了完美的解决方案,但他们没有详细介绍它,所以这就是我来这里的原因:https ://metafieldsmanager.thebestagency.com/articles/how-to-build-a-private-app
代码:
AddProductForm.js
let headers = {'X-Shopify-Access-Token': 'access token',
'host': 'store-example.myshopify.com',
'Content-Type': 'application/json',
'Access-Control-Allow-Origin': '*'
}
let baseUrl = 'https://store-example.myshopify.com/admin/api/2021-07/'
现在我只是在尝试一个简单的获取请求。
let handleSubmit = () => {
let toAdd = {
product:{
title: title,
body_html: bodyHtml,
vendor: vendor,
}
}
console.log(baseUrl + 'products.json')
fetch(baseUrl + 'products.json', {
headers: headers
}).then(res=>console.log(res))
我省略了其余代码以保持简单,但它几乎是基本的 JSX 和表单处理。
解决方案
在处理了一段时间 Shopify 应用程序后,您确实需要另一台具有一些 https 配置或隧道Ngrok
的服务器,该服务器需要调用 Shopify api 而不是您的前端,然后 Shopify CLI 为您搭建的应用程序必须呼叫该服务器。
推荐阅读
- node.js - Twilio:创建会议时,将客户端设备拨入通话并转移到另一部电话
- c# - Vscode ominisharp 错误:生成 cmd ENOENT
- c# - 如何在 C# 中重用查询
- javascript - 如何修改此代码以不要求文件。[JavaScript]
- python - sys.stdin.readline().split() 排序时,整数序列很奇怪
- javascript - 在 javascriot 中使用 Select 的计算器
- reactjs - 如何在 Redux-Toolkit 中改变 asyncThunk 挂起状态的状态?
- python - pyspark:数据帧头转换
- angularjs - 如何知道 Web 应用程序是在浏览器上访问还是从团队自定义应用程序访问
- c++ - Google 测试 (gtest) `EXPECT_TRUE()` 宏不会以 `std::is_same<>` 模板作为输入进行编译