Node.js 在Hyperledger Fabric NodeJS智能合约中,是否应将所有参数作为字符串传递?
在Hyperledger fabric的Node.js 在Hyperledger Fabric NodeJS智能合约中,是否应将所有参数作为字符串传递?,node.js,hyperledger-fabric,Node.js,Hyperledger Fabric,在Hyperledger fabric的结构示例存储库中,特别是商业票据的示例应用程序: 有一行调用issue函数: const issueResponse = await contract.submitTransaction('issue', 'MagnetoCorp', '00001', '2020-05-31', '2020-11-30', '5000000'); 最后一个参数假定为整数,但值5000000作为字符串传递 在Hyperledger结构中编写NodeJS智能合约时是否要求
结构示例存储库中,特别是商业票据的示例应用程序:
有一行调用issue
函数:
const issueResponse = await contract.submitTransaction('issue', 'MagnetoCorp', '00001', '2020-05-31', '2020-11-30', '5000000');
最后一个参数假定为整数,但值5000000
作为字符串传递
在Hyperledger结构中编写NodeJS智能合约时是否要求所有参数都应作为字符串传递 是,函数参数必须作为字符串传递
如果要将JSON传递给函数,可以对数据进行字符串化,并在方法内部对其进行解析
例如:
data = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
var response = await contract.submitTransaction('myFunction', data);
然后在你的链码里
async myFunction(ctx, data){
data = JSON.parse(data);
//... your logics
}