————用区块链技术为文体产业赋能————
日前,SEER核心开发者对SEER cli和database_api进行了更新,新增接口:get_transaction_by_txid,可用于通过交易ID查询该交易在链上所在区块高度和交易在区块中的位置。
交易ID即txid,是通过已签名的交易内容来进行计算出的散列值,可在区块生产或被确认前产生。例如交易所等第三方网关,通常在发起一笔提现或充值后,会向用户反馈此操作的交易id,用户可凭此txid在区块浏览器查询此交易被确认的状态。因此,TXID的一致算法非常重要,而在Graphene工具组中,传统的形式是通过额外运行elasticsearch插件来实现此功能。SEER将此功能集成在database_api中,可极大减轻前端开发者的工作量,提高开发效率。
格式:get_transaction_by_txid transaction_id
参数:transaction_id,交易的散列值。可通过cli的get_transaction_id 、transfer2 、get_block接口进行前端计算生成,新升级后的database_api的get_block也将包含transaction_ids字段。
作用:通过transaction_id查询该交易在链上所在区块高度和交易在区块中的位置,前端开发者可再通过get_block接口向用户返回该transaction_id所对应的transactions结构体(即交易详细内容)。
示例:
{"jsonrpc": "2.0", "method": "get_transaction_by_txid", "params": [3ecbd34522eb320b105b653247012ea996fa7065], "id": 1}
返回信息示例:
{
"id": 1,
"jsonrpc": "2.0",
"result": {
"id": "2.22.102327",//交易的object_ID
"txid": "3ecbd34522eb320b105b653247012ea996fa7065",//transaction_id
"timestamp": "2019-08-26T08:32:51",//时间戳,格林尼治时间
"block_num": 13274359,//交易所在块高
"trx_in_block": 0//交易在区块中的位置
}
}
通过接口返回的
"block_num"
、
"trx_in_block"
两个参数可知道此交易所在块高及此交易在该区块中的位置,从而再使用
get_block
接口查询其交易详细内容。
示例:
{"jsonrpc": "2.0", "method": "get_block", "params": [13274359], "id": 1}
返回信息示例:
{
"id": 1,
"jsonrpc": "2.0",
"result": {
&