hyperledger-fabric - 使用 Go SDK 从 Hyperledger Fabric 交易中读取数据
问题描述
我想在 Hyperledger Fabric 上锚定一些数据,这些数据应该是不可变的,这样当我以后任何时候读取这个值时,这个值应该保持不变。
我想我可以修改 stateDB 并将该数据存储为键值对使用stub.PutState
{
"data": "mydata"
}
并记下交易 ID。
但是,由于状态数据库是可变的,我可以做这样的事情而不是做stub.GetState
stub.GetHistoryForKey("data")
遍历并匹配事务 ID,然后读取键的值。
但是,鉴于我已经拥有事务 ID 而不是遍历历史记录,有没有办法直接从事务中读取此值?
还是有更好的方法来做到这一点?
解决方案
您可以使用QueryBlockByTxnID
方法或QueryTransaction
方法(如评论中的kartik所述)。但是您需要自己解析或格式化数据。
推荐阅读
- c++ - 如何初始化 Matrix 类型的 constexpr 矩阵
? - c# - 如何在项目之间共享公共代码,同时更新此代码 - 将在使用此公共代码的项目中更新它?
- powershell - 检查远程服务器端口
- html - 独立打开和关闭所有标签,然后过滤搜索过滤器框中的标签以显示正确的卡片
- php - select statements in eloquent gives me an error
- apache-kafka - Zookeeper-Kafka 和一致性哈希
- django - Django Rest Framework 额外的身份验证检查
- node.js - Node 的 process.argv 没有显示所有使用的 Node CLI 选项
- android - 我正在尝试通过单击一个片段中的网格视图中的图像来打开一个新活动,但我遇到了一些问题
- python - 使用多处理时,如何从代码中一次停止所有进程?