Есть ли какие-либо способы сделать транзакцию недействительной в цепном коде, помимо выдачи ошибки, с помощью fabri c -contract-api? - PullRequest
0 голосов
/ 26 мая 2020

Когда мы используем fabric-contract-api для записи цепного кода Hyperledger Fabri c, я знаю, что мы можем выдать ошибку в функциях, чтобы сделать транзакцию недействительной, чтобы она не была зафиксирована.

const { Contract } = require('fabric-contract-api');

class MyContract extends Contract {
    async update(ctx, key, value) {
        //query some assets
        //...
        //update some assets
        //check the result
        if (validationFailed) {
            throw new Error('Validation Failed');
        }
        return result;
    }
}

Но помимо выдачи ошибки, есть ли другой способ сделать транзакцию недействительной или пометить ее как неудачную, чтобы транзакция не была зафиксирована? Я хочу поместить сообщение об ошибке в возвращаемый результат, а не выдавать ошибки.

...