我在hyperledger composer的帮助下编写了一份智能合同,我需要访问资产的事务历史记录,以了解它是否被当局批准,并且当该资产获得批准时,事务已经完成,现在需要在我的智能契约中访问logic.js中该资产的事务历史记录。
提前谢谢。
发布于 2018-06-23 04:40:30
下面是如何访问native API,并使用它可以访问特定资产的Historian记录
const id = transaction.assetId;
const nativeSupport = transaction.nativeSupport;
const nativeKey = getNativeAPI().createCompositeKey('Asset:systest.transactions.SimpleStringAsset', [id]);
const iterator = await getNativeAPI().getHistoryForKey(nativeKey);
let results = [];
let res = {done : false};
while (!res.done) {
res = await iterator.next();
if (res && res.value && res.value.value) {
let val = res.value.value.toString('utf8');
if (val.length > 0) {
results.push(JSON.parse(val));
}
}
if (res && res.done) {
try {
iterator.close();
}
catch (err) {
}
}
}有关更多信息,请查看以下网址:scripts
https://stackoverflow.com/questions/50343374
复制相似问题