如何在 hyperledger fabric 的 Chaincode 中将对象数组作为 args 发送

How to send an object array as args in Chaincode for hyperledger fabric

我有一个如下所示的对象数组

[ {"name":"heamoglobin","reading":"12"},
  {"name":"mrc","reading":"3.3"},
  {"name":"hct","reading":"33"} ]

我需要将其作为我的链代码函数的参数发送。我尝试对整个数组进行字符串化 像这样

"[{\"name\":\"heamoglobin\",\"reading\":\"12\"},{\"name\":\"mrc\",\"reading\":\"3.3\"},{\"name\":\"hct\",\"reading\":\"33\"}]"

但没有成功交易

有什么建议吗?

您必须将每个还不是字符串的参数转换为字符串。类似于:

await contract.submitTransaction("createReport", uid, req.body.patientID, user[0].email, clinicProfile.centerName, date.toString(), JSON.stringify(data));

然后适当地处理链代码操作中的每个参数(解组数组等)。