Как получить доступ к истории транзакций актива в hyperledger composer logic.js? - PullRequest
0 голосов
/ 15 мая 2018

Я пишу умный контракт с помощью hyperledger composer, и мне нужно получить доступ к истории транзакций актива, чтобы узнать его состояние, утвержден ли он властями, и когда актив одобрен, сделка сделанаТеперь необходимо получить доступ к истории транзакций для этого актива внутри logic.js в моем умном контракте.

Заранее спасибо.

1 Ответ

0 голосов
/ 23 июня 2018

Вот как вы можете получить доступ к 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) {
        }
    }
}

Для получения дополнительной информации, пожалуйста, проверьте этот URL: https://hyperledger.github.io/composer/latest/reference/js_scripts

...