Когда мы используем 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;
}
}
Но помимо выдачи ошибки, есть ли другой способ сделать транзакцию недействительной или пометить ее как неудачную, чтобы транзакция не была зафиксирована? Я хочу поместить сообщение об ошибке в возвращаемый результат, а не выдавать ошибки.