交易重试接口

交易重试接口的功能扩展于发送交易上链的接口。在发送交易上链的基础上扩展了交易失败的重试功能。

基础交易自动重试接口

接口说明:将交易发送上链,如果失败了则进行失败重试。

请求方式:POST

请求地址:http://BROP_HOST:PORT/autotxretry/sendTxAndRetry.json

队列事件:无

参数列表:

名称 类型 描述
contractAddress String 合约地址
bizId String 业务ID
hsmUserId String 加密机用户索引
method String 智能合约方法
params String[](Object...) 智能合约方法参数

返回结果:

名称 类型 描述
detail String 自动生成的唯一交易业务编号

请求示例:

{
    "contractAddress":"9c1e078931ba294f891dd7e9f3a6f70dec2d3051",
    "bizId":"cwp01",
    "method":"createRecord",
    "params":[
        "242bdd2f6d03edad97e308b905534fad5d56db27",
        "record09281642",
        "",
        "242bdd2f6d03edad97e308b905534fad5d56db27",
        "str",
        "fb641d243381a0851ee655bfc6ee3ce7ad06592c"
    ],
    "hsmUserId":"account01"
}

返回示例:

{
  "code": "SUCCESS",
  "detail": "1509779266266751170"
}

授时存证交易自动重试接口

接口说明:发送授时交易,如果失败了则进行失败重试。

请求方式:POST

请求地址:http://BROP_HOST:PORT/autotxretry/sendNTSCTxAndRetry.json

队列事件:无

参数列表:

名称 类型 描述
contractAddress String 合约地址
bizId String 业务ID
hsmUserId String 加密机用户索引
method String 智能合约方法
params String[](Object...) 智能合约方法参数

返回结果:

名称 类型 描述
detail String 自动生成的唯一交易业务编号

请求示例:

{
    "contractAddress":"9c1e078931ba294f891dd7e9f3a6f70dec2d3051",
    "bizId":"cwp01",
    "method":"createRecord",
    "params":[
        "242bdd2f6d03edad97e308b905534fad5d56db27",
        "record09281642",
        "",
        "242bdd2f6d03edad97e308b905534fad5d56db27",
        "str",
        "fb641d243381a0851ee655bfc6ee3ce7ad06592c"
    ],
    "hsmUserId":"account01"
}

返回示例:

{
  "code": "SUCCESS",
  "detail": "1509779266266751170"
}

查询自动重试交易信息接口

接口说明:查询失败重试的交易上链情况。

请求方式:POST

请求地址:http://BROP_HOST:PORT/autotxretry/queryResult.json

队列事件:无

参数列表:

名称 类型 描述
flowNumber String 业务流水号

返回结果:

名称 类型 描述
blockLimit number 截至块号
params List 请求参数
bizId string 业务id
contractAddress string 调用的合约地址
method string 调用的合约接口
hsmUserId string 加密机用户id
createTime string 记录创建时间
updateTime string 记录更新时间
txHash string 交易hash
retryTime number 重试次数
txStatus string 上链结果,详见附录一
desc string 失败描述

请求示例:

?flowNumber=1509779266266751170

返回示例:

{
  "code": "SUCCESS",
  "detail": {
        "blockLimit":10021,
        "params":["ajkmxl"100],
        "bizId":"createAccount01",
        "contractAddress":"e3772c2001aca5cf6a098523442d8692b98b2e8f",
        "method":"createAccount",
        "hsmUserId":"admin",
        "createTime":"2018-09-19 14:20:00",
        "updateTime":"2018-09-19 19:20:00",
        "txHash":"fae20e7c0b906f050063b3e9840f62f3b46f80369306e6e24d4e217ab4e0e181",
        "retryTime":0,
        "txStatus":"SUCCESS",
        "desc":""
    }
}

重启“无效”交易接口

接口说明:将“无效”状态的交易重新改为“等待重试”状态,并将重试次数归零。

请求方式:GET

请求地址:http://BROP_HOST:PORT/autotxretry/resetInvalidRetry.json

队列事件:无

参数列表:

名称 类型 描述
flowNumber String 业务流水号(可选,不传该参数为重置所有该类状态的交易)

返回结果:

名称 类型 描述
code String 处理结果

请求示例:

?flowNumber=1509779266266751170

返回示例:

{
  "code": "SUCCESS",
  "detail": null
}

重启“交易处理中”状态交易接口

接口说明:将“交易处理中”状态的交易重新改为“等待重试”状态。

请求方式:GET

请求地址:http://BROP_HOST:PORT/autotxretry/resetDotxRetry.json

队列事件:无

参数列表:

名称 类型 描述
flowNumber String 业务流水号(可选,不传该参数为重置所有该类状态的交易)

返回结果:

名称 类型 描述
code String 处理结果

请求示例:

?flowNumber=1509779266266751170

返回示例:

{
  "code": "SUCCESS",
  "detail": null
}

附录一 txStatus(上链结果)

名称 类型 描述
初始化 INIT 用于标识中间件接受到用户交易并写入数据库时的状态
交易处理中 DOTX 用于标识中间件正在处理交易时的锁定交易的状态
上链中 ONCHAIN 用于标识某笔交易已经发送上链,但还未确定交易是否发送成功的状态
成功 SUCCESS 用于标识某笔交易已经成功发送上链的状态
等待重试 RETRY 用于标识某笔交易等待中间件调度处理的状态
无效 INVALID 用于标识某笔交易暂停被处理的状态

results matching ""

    No results matching ""