区块链存证应用
本教程将开发一个简单的存证应用来演示存证相关的操作,包括存证的创建和查询。
有关存证
的介绍请参考这里。
需求: 开发前请完成准备工作
开发步骤
初始化 SDK
参考初始化 SDK
定义存证
定义存证相关的变量。
Copy
recordMetadata := `{"data":"hello,world"}`
digestAlgo := "SHA256"
recordDigestBz := tmhash.Sum([]byte(recordMetadata))
recordDigest := hex.EncodeToString(recordDigestBz)
recordContent := record.Content{
Digest: recordDigest,
DigestAlgo: digestAlgo,
URI: "",
Meta: recordMetadata,
}
创建存证
调用 Record
模块的 CreateRecord
方法发起创建存证交易。
Copy
baseTx := types.BaseTx{
From: accountName,
Gas: uint64(gas),
Fee: fee,
Memo: "",
Mode: mode,
Password: password,
}
createRecordReq := record.CreateRecordRequest{
Contents: []record.Content{recordContent},
}
recordID, err := client.Record.CreateRecord(createRecordReq, baseTx)
查询存证
根据 recordID
查询存证信息。
Copy
res, err := client.Record.QueryRecord(recordID)
完整示例代码
完整的存证示例应用代码如下:
Copy
TODO