我在我的应用程序中使用 AXIOS 来访问 shopify admin api。我正在使用元字段更新客户(据我了解,店面 API 不支持 graphql)。我在执行 PUT 时收到预检选项错误。错误是 404。我试图点击的项目确实存在,所以我想知道 shopify 是否错误地处理了请求,或者我的配置中是否缺少某些内容。
注意:我可以通过 Postman 成功完成相同的请求。据我所知,邮递员没有进行选项预检。
我的代码:
axios({
method: 'PUT',
url: `https://${SHOPIFY_SHOP}/admin/customers/${decodedId}.json`,
auth: {
username: SHOPIFY_BASIC_AUTH_USERNAME,
password: SHOPIFY_BASIC_AUTH_SECRET,
},
data: {
customer: {
id: decodedId,
metafields: [
{
namespace: 'custom_fields',
key: 'organization',
value: org,
value_type: 'string',
},
{
namespace: 'custom_fields',
key: 'token_pro',
value: isPro,
value_type: 'integer',
},
],
},
},
}).then((data) => {
debugger
}).catch(( error ) => {
debugger
});
错误
OPTIONS https://SHOP_NAME.myshopify.com/admin/customers/776734343229.json 404 (Not Found)
Failed to load https://SHOP_NAME.myshopify.com/admin/customers/776734343229.json: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'localhost:3000' is therefore not allowed access.
请注意,在此 axios 调用时,客户实际上确实存在。