【发布时间】:2021-12-27 06:42:27
【问题描述】:
**我对如何在 deluge 脚本中声明数组有点困惑。我在网上看到了参考资料,但不知何故我可能没有正确使用这种语法:
x = 列表();
request_body 正在从我的服务器接收 JSON 数组
我收到一个错误集成函数“zoho.crm.createrecord”在索引 2 行号:15 处的参数类型不匹配
这是我将 JSON 数组发送到 CRM 的代码
async function sendToCRM(pets) {
var jsonPets = JSON.stringify(pets)
superagent
.post(insertPet_URL)
.set("Content-Type", "application/json")
.send(jsonPets)
.end((e, r) => {
console.log(r.body)
})// sends a JSON post body
}
app.post("/pets", (req,res)=> {
var pets = req.body
var petsData = []
pets.forEach(function(pet){
var tmp = {}
tmp["Name"] = pet.Ngalan
tmp["Pet_Owner"] = pet.Tagiya
tmp["Contact_Number"] = pet.Numero
tmp["Birthdate"] = pet.Kaadlawan
tmp["Breed"] = pet.Rasa
petsData.push(tmp)
})
console.log(petsData)
sendToCRM(petsData)
res.send(req.body)
res.status(200)
})
服务器端没有问题,我能够从 Postman 接收这个 JSON 数组,这是我要发送到 CRM deluge 的数组。这是我的 JSON 数组:
[{"Ngalan":"Hachi","Tagiya":"Rex","Numero":"09778135353","Kaadlawan":"2020-12-12","Rasa":"Akita Inu"},{"Ngalan":"qwe","Tagiya":"Rex","Numero":"09778135353","Kaadlawan":"2020-12-12","Rasa":"Akita Inu"}]
任何帮助将不胜感激。谢谢!
【问题讨论】:
-
zoho.com/deluge/help/crm/create-record.html#Syntax
record_details应该是键值类型,你可能只传递值。 -
谢谢!但由于我的 JSON 是一个对象数组,知道如何使用 foreach 循环它们吗?我没有在网上找到任何关于此的资源。
-
对于
x,您应该使用Map而不是List。并在其中存储键值对。像x = map(),x.put("PetName", request_body.get("Pet_Name")) -
非常感谢!我按照你说的做了,但是我的服务器端出现错误参数类型不匹配 - 找到'TEXT',但函数'get'需要'[BIGINT]' .我还将
pet_data = List();更改为pet_data = Map();,因为我在CRM 上也遇到了相同的错误 -
基本上,
x应该是一个键值类型。不知道什么是合适的类型。
标签: javascript arrays foreach crm deluge