我目前正在学习如何使用Hyperledger Fabric Node SDK开发客户端应用程序。为此,我现在尝试了解fabric-samples中余额转移示例的Node JS代码。
在 balance-transfer / app / invoke-transaction.js 文件中,invokeChaincode函数返回交易ID。返回的值是app.js调用后函数的res参数。
我的问题是,仅凭交易ID可以做什么?如果我想知道调用的阻止号怎么办?只是没有进一步使用的回应吗?
如果这是一个愚蠢的问题,请忍受,我是新来的。
谢谢!
这是陈述的app.js的代码段
// Invoke transaction on chaincode on target peers
app.post('/channels/:channelName/chaincodes/:chaincodeName', function(req, res) {
logger.debug('==================== INVOKE ON CHAINCODE ==================');
var peers = req.body.peers;
var chaincodeName = req.params.chaincodeName;
var channelName = req.params.channelName;
var fcn = req.body.fcn;
var args = req.body.args;
logger.debug('channelName : ' + channelName);
logger.debug('chaincodeName : ' + chaincodeName);
logger.debug('fcn : ' + fcn);
logger.debug('args : ' + args);
if (!chaincodeName) {
res.json(getErrorMessage('\'chaincodeName\''));
return;
}
if (!channelName) {
res.json(getErrorMessage('\'channelName\''));
return;
}
if (!fcn) {
res.json(getErrorMessage('\'fcn\''));
return;
}
if (!args) {
res.json(getErrorMessage('\'args\''));
return;
}
invoke.invokeChaincode(peers, channelName, chaincodeName, fcn, args, req.username, req.orgname)
.then(function(message) {
res.send(message);
});
});
答案 0 :(得分:0)
您可以使用交易ID侦听任何事件,或稍后在分类帐中查询交易。
查询交易记录:https://github.com/hyperledger/fabric-samples/blob/release/balance-transfer/app/query.js#L100
这取决于您如何使用它。
有关更多信息,请参阅SDK文档:https://fabric-sdk-node.github.io/index.html