Invoke API正在接受该事务并直接返回事务代码和ok状态。
请求在之后处理,实际上可以被链代码拒绝,或者分类帐添加可能因任何原因而失败。
检查交易是否被链码成功处理并将结果添加到分类帐的最佳方法是什么?
答案 0 :(得分:2)
Fabric v0.6调用是一个异步过程,获取成功或失败的唯一方法是在内置事件框架的帮助下。 Section 3.5 of Fabric Protocol Specification contains Event related information 此事件框架生成3种事件。
如果您对检测链代码执行成功感兴趣,则应跟踪阻止事件。您只需要监视包含您在提交Invoke事务时收到的UUID的块事件消息的发生。 如果您想跟踪Chaincode失败,那么您也应该跟踪拒绝事件。再次,跟踪包含您的UUID的消息为TxId。 请注意,如果出现拒绝事件,则不会创建阻止事件。反之亦然。 Fabric示例有一个示例实现,可用于提供有关如何编写代码的想法。 https://github.com/hyperledger/fabric/tree/master/examples/events/block-listener
请注意,从Hyperledger Fabric v1.x.x开始,架构完全不同。以上回答是针对Hyperledger Fabric v0.6
中提出的问题