Javascript 使用额外密钥进行shopify api节点解析
我正在使用shopify api节点在shopify上创建一个产品。 我使用了这种语法Javascript 使用额外密钥进行shopify api节点解析,javascript,json,node.js,shopify,Javascript,Json,Node.js,Shopify,我正在使用shopify api节点在shopify上创建一个产品。 我使用了这种语法 shopify.metafield.create({ key: 'warehouse', value: 25, value_type: 'integer', namespace: 'inventory', owner_resource: 'product', owner_id: 632910392 }).then( metafield => console.log(metaf
shopify.metafield.create({
key: 'warehouse',
value: 25,
value_type: 'integer',
namespace: 'inventory',
owner_resource: 'product',
owner_id: 632910392
}).then(
metafield => console.log(metafield),
err => console.error(err)
);
并将其转换为以下代码:
self.parsedOutgoingItem(req, item, function(err, parsedItem) {
// get the corresponding method name for this type of model request
var recordType = modelMapping.key;
var postMethod = modelMapping.methods.post;
console.log(parsedItem);
console.log(JSON.stringify(parsedItem));
shopify[recordType][postMethod]({
parsedItem
}).then(
metafields => console.log(metafields),
err => console.error(err)
);
});
项是对象
parsedItem映射到带有Shopify键值的obj
parsedItem控制台输出
作为index.js第115行代码的结果。。。
哪个在使用这个条件
if (params) {
const body = key ? { [key]: params } : params;
options.headers['Content-Type'] = 'application/json';
options.body = body;
}
它将我的json obj解析为
{"product": `//it is what we need`
{"parsedItem": `//it is what comes up which is causing the error`
{
images:[ {"src":"https://s3.amazonaws.com/com.rugcopro.photos.turcopersian/images/268d6fd8-cb43-4309-b85e-1e747421df25.png"}, {"src":"https://s3.amazonaws.com/com.rugcopro.photos.turcopersian/images/c8af415e-2c6a-44df-9a18-42425389641a.png"}
],
product_type:"Rug",
tags:["Oversize","Kerman Ravar","Rug","traditional",700,"Runner","Rectangle","Blue","Green"],
title:"tirlw hsdka",
variants:{"price":700,"option3":"wool","title":"Rug wool","sku":"13698,27411i","option1":"3.9x17.1","option2":"Green"}
}
}
由于obj中的额外“parsedItem”键,它导致post请求出错。
你能帮我克服这个错误吗
我是一个初学者。。。在这里创建一个问题之前,我已经在StackOverflow上发布了,没有人回复。。如果有人帮我,那就太好了。我真傻
self.parsedOutgoingItem(req, item, function(err, parsedItem) {
// get the corresponding method name for this type of model request
var recordType = modelMapping.key;
var postMethod = modelMapping.methods.post;
console.log(parsedItem);
console.log(JSON.stringify(parsedItem));
shopify[recordType][postMethod](
parsedItem
).then(
metafields => console.log(metafields),
err => console.error(err)
);
});
只需删除parsedItem附近的{}
self.parsedOutgoingItem(req, item, function(err, parsedItem) {
// get the corresponding method name for this type of model request
var recordType = modelMapping.key;
var postMethod = modelMapping.methods.post;
console.log(parsedItem);
console.log(JSON.stringify(parsedItem));
shopify[recordType][postMethod](
parsedItem
).then(
metafields => console.log(metafields),
err => console.error(err)
);
});