混合支付平台 -- SL21 API 接口说明 --------------------------------------- 1. 注册 ~~~~~~~ **简要描述:** - 注册新用户 **请求URL:** - ``http://localhost:3001/register`` **请求方式:** - POST **参数:** +------------+--------+----------+--------+ | 参数名 | 必选 | 类型 | 说明 | +============+========+==========+========+ | password | 是 | string | 密码 | +------------+--------+----------+--------+ **请求示例** :: { "password": "123" } **返回示例** :: { "success": true, "statusCode": 200, "message": "注册成功", "data": { "address": "0x96951816290931278e0b7a2f5a0dcea6a9c86e77", "keyStore": "{\"version\":3,\"id\":\"4a6414df-ad68-4a8e-a1aa-c3036a09b77e\",\"address\":\"96951816290931278e0b7a2f5a0dcea6a9c86e77\",\"crypto\":{\"ciphertext\":\"06262cc1e3ceb7d0b3e9f0f64087be3eae33696b94075cad6b4183197a8c73e6\",\"cipherparams\":{\"iv\":\"ba261919f4ddcf1af6e1a0a9238cc240\"},\"cipher\":\"aes-128-ctr\",\"kdf\":\"scrypt\",\"kdfparams\":{\"dklen\":32,\"salt\":\"dc77114da655599012fb33e34a72dec5588167e9baf9405f1cd05e0282d4cd78\",\"n\":8192,\"r\":8,\"p\":1},\"mac\":\"3f19bae52ca0bd52f281d723178c470e0e297c521cfe4f87befebe67883b3a4e\"}}" } } **返回参数说明** +--------------+-----------+----------------+ | 参数名 | 类型 | 说明 | +==============+===========+================+ | statusCode | number | 状态码 | +--------------+-----------+----------------+ | success | boolean | true / false | +--------------+-----------+----------------+ | message | string | 异常说明 | +--------------+-----------+----------------+ | data | object | 查询信息 | +--------------+-----------+----------------+ +--------------+----------+----------------+ | data参数名 | 类型 | 说明 | +==============+==========+================+ | address | string | 用户地址 | +--------------+----------+----------------+ | keyStore | string | 用户keyStore | +--------------+----------+----------------+ 2. keyStore登录 ~~~~~~~~~~~~~~~ **简要描述:** - 使用keyStore登录 **请求URL:** - ``http://localhost:3001/keyStoreLogin`` **请求方式:** - POST **参数:** +------------+--------+----------+----------------+ | 参数名 | 必选 | 类型 | 说明 | +============+========+==========+================+ | keyStore | 是 | string | 用户keyStore | +------------+--------+----------+----------------+ | password | 是 | string | 密码 | +------------+--------+----------+----------------+ **请求示例** :: { "keyStore": "{\"address\":\"8ef73a369711f309c8183d3633b141b78cb68835\",\"crypto\":{\"cipher\":\"aes-128-ctr\",\"ciphertext\":\"5fb42f62c65b79e95165501ca722e3343e3d88accde096856527b1dee7e70f6b\",\"cipherparams\":{\"iv\":\"3a5b059b940031e1edad49892b182165\"},\"kdf\":\"scrypt\",\"kdfparams\":{\"dklen\":32,\"n\":262144,\"p\":1,\"r\":8,\"salt\":\"568fcfb8fa8e2c0a7f731c067c79c3ad0a8be4f1a6c74774531d81c88d27406d\"},\"mac\":\"fa81f4d7773b2266a907abce563dc05d515afa211cd2cf3b0b3a7cc1de9ff039\"},\"id\":\"f44560c1-8063-4d9e-b371-6845ee168f79\",\"version\":3}", "password": "123456" } **返回示例** :: { "success": true, "statusCode": 200, "message": "登录成功", "data": { "address": "0x8ef73a369711f309c8183d3633b141b78cb68835", "keyStore": "{\"address\":\"8ef73a369711f309c8183d3633b141b78cb68835\",\"crypto\":{\"cipher\":\"aes-128-ctr\",\"ciphertext\":\"5fb42f62c65b79e95165501ca722e3343e3d88accde096856527b1dee7e70f6b\",\"cipherparams\":{\"iv\":\"3a5b059b940031e1edad49892b182165\"},\"kdf\":\"scrypt\",\"kdfparams\":{\"dklen\":32,\"n\":262144,\"p\":1,\"r\":8,\"salt\":\"568fcfb8fa8e2c0a7f731c067c79c3ad0a8be4f1a6c74774531d81c88d27406d\"},\"mac\":\"fa81f4d7773b2266a907abce563dc05d515afa211cd2cf3b0b3a7cc1de9ff039\"},\"id\":\"f44560c1-8063-4d9e-b371-6845ee168f79\",\"version\":3}" } } **返回参数说明** +--------------+-----------+----------------+ | 参数名 | 类型 | 说明 | +==============+===========+================+ | statusCode | number | 状态码 | +--------------+-----------+----------------+ | success | boolean | true / false | +--------------+-----------+----------------+ | message | string | 异常说明 | +--------------+-----------+----------------+ | data | object | 查询信息 | +--------------+-----------+----------------+ +--------------+----------+----------------+ | data参数名 | 类型 | 说明 | +==============+==========+================+ | address | string | 用户地址 | +--------------+----------+----------------+ | keyStore | string | 用户keyStore | +--------------+----------+----------------+ 3. 用户登录 ~~~~~~~~~~~ **简要描述:** - 用户登录 **请求URL:** - ``http://localhost:3001/login`` **请求方式:** - POST **参数:** +------------+--------+----------+------------+ | 参数名 | 必选 | 类型 | 说明 | +============+========+==========+============+ | address | 是 | string | 用户地址 | +------------+--------+----------+------------+ | password | 是 | string | 密码 | +------------+--------+----------+------------+ **请求示例** :: { "address": "0x8ef73a369711f309c8183d3633b141b78cb68835", "password": "123456" } **返回示例** :: { "success": true, "statusCode": 200, "message": "登录成功", "data": { "address": "0x8ef73a369711f309c8183d3633b141b78cb68835", "keyStore": "{\"address\":\"8ef73a369711f309c8183d3633b141b78cb68835\",\"crypto\":{\"cipher\":\"aes-128-ctr\",\"ciphertext\":\"5fb42f62c65b79e95165501ca722e3343e3d88accde096856527b1dee7e70f6b\",\"cipherparams\":{\"iv\":\"3a5b059b940031e1edad49892b182165\"},\"kdf\":\"scrypt\",\"kdfparams\":{\"dklen\":32,\"n\":262144,\"p\":1,\"r\":8,\"salt\":\"568fcfb8fa8e2c0a7f731c067c79c3ad0a8be4f1a6c74774531d81c88d27406d\"},\"mac\":\"fa81f4d7773b2266a907abce563dc05d515afa211cd2cf3b0b3a7cc1de9ff039\"},\"id\":\"f44560c1-8063-4d9e-b371-6845ee168f79\",\"version\":3}" } } **返回参数说明** +--------------+-----------+----------------+ | 参数名 | 类型 | 说明 | +==============+===========+================+ | statusCode | number | 状态码 | +--------------+-----------+----------------+ | success | boolean | true / false | +--------------+-----------+----------------+ | message | string | 异常说明 | +--------------+-----------+----------------+ | data | object | 数据信息 | +--------------+-----------+----------------+ +--------------+----------+----------------+ | data参数名 | 类型 | 说明 | +==============+==========+================+ | address | string | 用户地址 | +--------------+----------+----------------+ | keyStore | string | 用户keyStore | +--------------+----------+----------------+ 6. 流转 ~~~~~~~ **简要描述:** - 流转 **请求URL:** - ``http://localhost:3001/changeOwner`` **请求方式:** - POST **参数:** +----------------+--------+----------+------------------------+ | 参数名 | 必选 | 类型 | 说明 | +================+========+==========+========================+ | type | 是 | number | 类型(详见配置说明) | +----------------+--------+----------+------------------------+ | key | 是 | number | 资产唯一编号 | +----------------+--------+----------+------------------------+ | fromUserAddr | 是 | string | 流转用户地址 | +----------------+--------+----------+------------------------+ | password | 是 | number | 流转用户密码 | +----------------+--------+----------+------------------------+ | toUserAddr | 是 | number | 接收用户地址 | +----------------+--------+----------+------------------------+ **请求示例** :: { "type": "1", "key": 2, "fromUserAddr": "0x8ef73a369711f309c8183d3633b141b78cb68835", "toUserAddr": "0x292103a4b1d06d42bab4fee2cf3721485ac12b0b", "password": "123456" } **返回示例** :: { "success": true, "statusCode": 200, "message": "success", "data":{ "time": 1591338217080 } } **返回参数说明** +--------------+-----------+----------------+ | 参数名 | 类型 | 说明 | +==============+===========+================+ | statusCode | number | 状态码 | +--------------+-----------+----------------+ | success | boolean | true / false | +--------------+-----------+----------------+ | message | string | 异常说明 | +--------------+-----------+----------------+ | data | object | 数据信息 | +--------------+-----------+----------------+ +--------------+----------+--------------+ | data参数名 | 类型 | 说明 | +==============+==========+==============+ | time | number | 交易时间戳 | +--------------+----------+--------------+ 7. 批量流转 ~~~~~~~~~~~ **简要描述:** - 批量流转 **请求URL:** - ``http://localhost:3001/batchChangeOwner`` **请求方式:** - POST **参数:** +----------------+--------+----------+--------------------------------+ | 参数名 | 必选 | 类型 | 说明 | +================+========+==========+================================+ | type | 是 | number | 类型(详见配置说明) | +----------------+--------+----------+--------------------------------+ | keys | 是 | Array | 资产唯一编号 例:[1,2,3,4,5] | +----------------+--------+----------+--------------------------------+ | fromUserAddr | 是 | string | 流转用户地址 | +----------------+--------+----------+--------------------------------+ | password | 是 | number | 流转用户密码 | +----------------+--------+----------+--------------------------------+ | toUserAddr | 是 | number | 接收用户地址 | +----------------+--------+----------+--------------------------------+ **请求示例** :: { "type": "10", "keys": [1, 2, 3], "fromUserAddr": "0x8ef73a369711f309c8183d3633b141b78cb68835", "toUserAddr": "0x292103a4b1d06d42bab4fee2cf3721485ac12b0b", "password": "123456" } **返回示例** :: { "success": true, "statusCode": 200, "message": "完成,失败的key查看data列表", "data": { "time": 1591338217080, "failList": [] } } **返回参数说明** +--------------+-----------+----------------+ | 参数名 | 类型 | 说明 | +==============+===========+================+ | statusCode | number | 状态码 | +--------------+-----------+----------------+ | success | boolean | true / false | +--------------+-----------+----------------+ | message | string | 异常说明 | +--------------+-----------+----------------+ | data | Object | 数据时间戳 | +--------------+-----------+----------------+ +--------------+----------+----------------------+ | data参数名 | 类型 | 说明 | +==============+==========+======================+ | time | number | 交易时间戳 | +--------------+----------+----------------------+ | failList | Array | 流转失败的资产列表 | +--------------+----------+----------------------+ 8. 流转(本地加签) ~~~~~~~~~~~~~~~~~~~ **简要描述:** - 流转,可在本地把加签好的数据直接传入后台,无需传入密码,安全性高。 **请求URL:** - ``http://localhost:3001/changeOwnerSign`` **请求方式:** - POST **参数:** +----------------+--------+----------+--------------------------------------------+ | 参数名 | 必选 | 类型 | 说明 | +================+========+==========+============================================+ | type | 是 | number | 类型(详见配置说明) | +----------------+--------+----------+--------------------------------------------+ | key | 是 | number | 资产唯一编号 | +----------------+--------+----------+--------------------------------------------+ | fromUserAddr | 是 | string | 流转用户地址 | +----------------+--------+----------+--------------------------------------------+ | signInfo | 是 | string | 加签后的数据(通过本地特有加签方法加签) | +----------------+--------+----------+--------------------------------------------+ | toUserAddr | 是 | number | 接收用户地址 | +----------------+--------+----------+--------------------------------------------+ **请求示例** :: { "type": "1", "key": 2, "fromUserAddr": "0x8ef73a369711f309c8183d3633b141b78cb68835", "toUserAddr": "0x292103a4b1d06d42bab4fee2cf3721485ac12b0b", "signInfo": "0x09dd6fabc8071f88f9d6b64e03a1bb51f64ffe5ebb165203e6fde3e8b2c0d53f630b8120fe81d8bcffcdf1a67fc3daa87ea264f91ec9fe44b67a5521b0b2e5cc1b" } **返回示例** :: { "success": true, "statusCode": 200, "message": "success", "data":{ "time": 1591338217080 } } **返回参数说明** +--------------+-----------+----------------+ | 参数名 | 类型 | 说明 | +==============+===========+================+ | statusCode | number | 状态码 | +--------------+-----------+----------------+ | success | boolean | true / false | +--------------+-----------+----------------+ | message | string | 异常说明 | +--------------+-----------+----------------+ | data | object | 数据信息 | +--------------+-----------+----------------+ +--------------+----------+--------------+ | data参数名 | 类型 | 说明 | +==============+==========+==============+ | time | number | 交易时间戳 | +--------------+----------+--------------+ 9. 批量流转(本地加签) ~~~~~~~~~~~~~~~~~~~~~~~ **简要描述:** - 批量流转,可在本地把加签好的数据直接传入后台,无需传入密码,安全性高。 **请求URL:** - ``http://localhost:3001/batchChangeOwnerSign`` **请求方式:** - POST **参数:** +----------------+--------+----------+--------------------------------------------+ | 参数名 | 必选 | 类型 | 说明 | +================+========+==========+============================================+ | type | 是 | number | 类型(详见配置说明) | +----------------+--------+----------+--------------------------------------------+ | keys | 是 | Array | 资产唯一编号 例:[1,2,3,4,5] | +----------------+--------+----------+--------------------------------------------+ | fromUserAddr | 是 | string | 流转用户地址 | +----------------+--------+----------+--------------------------------------------+ | signInfo | 是 | string | 加签后的数据(通过本地特有加签方法加签) | +----------------+--------+----------+--------------------------------------------+ | toUserAddr | 是 | number | 接收用户地址 | +----------------+--------+----------+--------------------------------------------+ **请求示例** :: { "type": "10", "keys": [1, 2, 3], "fromUserAddr": "0x8ef73a369711f309c8183d3633b141b78cb68835", "toUserAddr": "0x292103a4b1d06d42bab4fee2cf3721485ac12b0b", "signInfo": "0x09dd6fabc8071f88f9d6b64e03a1bb51f64ffe5ebb165203e6fde3e8b2c0d53f630b8120fe81d8bcffcdf1a67fc3daa87ea264f91ec9fe44b67a5521b0b2e5cc1b" } **返回示例** :: { "success": true, "statusCode": 200, "message": "完成,失败的key查看data列表", "data": { "time": 1591338217080, "failList": [] } } **返回参数说明** +--------------+-----------+----------------+ | 参数名 | 类型 | 说明 | +==============+===========+================+ | statusCode | number | 状态码 | +--------------+-----------+----------------+ | success | boolean | true / false | +--------------+-----------+----------------+ | message | string | 异常说明 | +--------------+-----------+----------------+ | data | Object | 数据时间戳 | +--------------+-----------+----------------+ +--------------+----------+----------------------+ | data参数名 | 类型 | 说明 | +==============+==========+======================+ | time | number | 交易时间戳 | +--------------+----------+----------------------+ | failList | Array | 流转失败的资产列表 | +--------------+----------+----------------------+ 10. 校验 ~~~~~~~~ **简要描述:** - 校验是否上链 **请求URL:** - ``http://localhost:3001/traceCheck`` **请求方式:** - POST **参数:** +----------+--------+----------+------------------------+ | 参数名 | 必选 | 类型 | 说明 | +==========+========+==========+========================+ | type | 是 | number | 类型(详见配置说明) | +----------+--------+----------+------------------------+ | key | 是 | number | 资产唯一编号 | +----------+--------+----------+------------------------+ | proof | 是 | string | proof证明路径 | +----------+--------+----------+------------------------+ **请求示例** :: { "type": "100", "key": 1, "proof": "[{\"left\":\"6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b\"},{\"right\":\"4dc7876b8edc94a5791ad1cc18498f65560e12b9df308b689e28d3f23f026769\"},{\"right\":\"ac37ca9ea554e6f4239d00359c342705f254df9611bb95eb25641166b11a8308\"},{\"right\":\"0df9f436c177e9aa90d47697c5bb2038553f48a4f846757ad0a6d762ef9a34a0\"},{\"right\":\"545922ac6f713881e04165ea0a8190d0a79965a1d8cef26851964241bc33267b\"},{\"right\":\"333459ecc0b673a964cf445d1e6f8099bba14940d414e16626e89902cb2a16bf\"},{\"right\":\"49f64c54fb86e54b4281b32fa539e0166f23b9c1d52928e12a46914f7e20a308\"},{\"right\":\"be9c408db55ab55c819ec9e271274e387ddcfaa292361eef18273788f5c36fee\"},{\"right\":\"4ab69295400dc01b4441ccee5cc65234f90ee91bb441a5b54c339b1fa2e169b2\"},{\"right\":\"592ddd50c7da7dcfe0394a6ef2a2c431a97929b870776693fe07bfa4534c27ef\"},{\"right\":\"3c796a92bb8083757f8369b23092e9a6215c562ed29ed217cce1f185625bc8d2\"}]" } **返回示例** :: { "success": true, "statusCode": 200, "message": "校验结果:成功" } **返回参数说明** +--------------+-----------+----------------+ | 参数名 | 类型 | 说明 | +==============+===========+================+ | statusCode | number | 状态码 | +--------------+-----------+----------------+ | success | boolean | true / false | +--------------+-----------+----------------+ | message | string | 异常说明 | +--------------+-----------+----------------+ 11. 根据用户获取资产 ~~~~~~~~~~~~~~~~~~~~ **简要描述:** - 根据用户获取资产 **请求URL:** - ``http://localhost:3001/getUserToken`` **请求方式:** - POST **参数:** +------------+--------+----------+------------------------+ | 参数名 | 必选 | 类型 | 说明 | +============+========+==========+========================+ | userAddr | 是 | string | 用户地址 | +------------+--------+----------+------------------------+ | type | 否 | number | 类型(详见配置说明) | +------------+--------+----------+------------------------+ | page | 是 | number | 页数 | +------------+--------+----------+------------------------+ | rows | 是 | number | 条数 | +------------+--------+----------+------------------------+ **请求示例** :: { "userAddr": "0x292103a4b1d06d42bab4fee2cf3721485ac12b0b", "type": "1", "page": 1, "rows": 10 } **返回示例** :: { "success": true, "statusCode": 200, "message": "查询成功", "data": { "recordsTotal": 1, "pageTotal": 1, "page": 1, "records": [{ "_id": "5ec787508e8e4e37a03f92d2", "__v": 0, "type": "1", "key": 1, "value": "1590138663854&1&0x292103a4b1d06d42bab4fee2cf3721485ac12b0b&0x8f0f4482081b8d266ccc050ecd0110efd4d988eea2d126c5e422cfdc517cac422dfa02f785ef0437918de27decaf36949a92109d13c7f4d6cc3233ba38ee52651b", "keyHash": "6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b", "valueHash": "a797b12d6b2d7d5e89aaa4cdc7a3e0627a4b59910af8a415f7bc717c49c514ad", "valueProof": "[{\"left\":\"6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b\"},{\"right\":\"c325b46b19835bab28a4866698d307f211e25f68390c90ead4e85f63326e512f\"},{\"right\":\"bb67192158f620d1c2595a703855845a980c116825aec38f60a602e0642a89a9\"},{\"right\":\"d77a193767bf5aff053b6e84d71611ca6a5f2c6bb6fb19ae585c72f5bb3c2953\"},{\"right\":\"4d5afc27c79cba9095e6f28d976c1a892f6ad002068e3041fcf2d443fe3251d5\"},{\"right\":\"7ac0a114b6fc2e30294004e51bcf3df84bcbcc00b4aacd19b51629d4015bfcde\"},{\"right\":\"2838ee98b56d3b136918adec26d731403ac3814e2d3f4de57abc8f00018eb6f5\"},{\"right\":\"57e6e9992454fe0b61520bec968f71ee16da7236d8642b96c775af6ab7518d19\"},{\"right\":\"189577ecba4c767e7836e396de73a9743e067b50fcb8be3568e76437ecb048f7\"},{\"right\":\"186a5c6ed1a4a739c80764679a4aaefb7c11f0576e792d397c41a6e55064bc2e\"},{\"right\":\"194039a8700467582007bfb383d58dce8c732e6f9f9bab74de968200f6fb0c21\"}]", "updateTime": 1590138672706, "txHash": "0x1d69e08ef66368ca03e390de66ef383627dcde35316b295139861a22bd9ca569", "rootHash": "0x4342a044f209d872f7a2a19b2f597afc5f1e94ab70bd46f7ead282e16308cafb", "owner": "0x292103a4b1d06d42bab4fee2cf3721485ac12b0b", "contractAddress": "0x29e5c10152dc6a5609aaafc974d16de6f0d0ff96", "tempValue": "", "status": "0" }] } } **返回参数说明** +--------------+-----------+----------------+ | 参数名 | 类型 | 说明 | +==============+===========+================+ | statusCode | number | 状态码 | +--------------+-----------+----------------+ | success | boolean | true / false | +--------------+-----------+----------------+ | message | string | 异常说明 | +--------------+-----------+----------------+ | data | object | 查询信息 | +--------------+-----------+----------------+ +----------------+----------+------------+ | data参数名 | 类型 | 说明 | +================+==========+============+ | recordsTotal | number | 总条数 | +----------------+----------+------------+ | pageTotal | number | 总页数 | +----------------+----------+------------+ | page | number | 当前页数 | +----------------+----------+------------+ | records | array | 数据列表 | +----------------+----------+------------+ +-------------------+------------+--------------------------------------+ | records参数名 | 类型 | 说明 | +===================+============+======================================+ | _id | string | id编码 | +-------------------+------------+--------------------------------------+ | type | string | 类型(详见配置说明) | +-------------------+------------+--------------------------------------+ | key | number | 资产唯一编号 | +-------------------+------------+--------------------------------------+ | value | string | 资产流转记录 | +-------------------+------------+--------------------------------------+ | keyHash | string | 资产唯一编号哈希值 | +-------------------+------------+--------------------------------------+ | valueHash | string | 资产流转记录哈希值 | +-------------------+------------+--------------------------------------+ | updateTime | number | 更新时间戳 | +-------------------+------------+--------------------------------------+ | txHash | string | 交易哈希值 | +-------------------+------------+--------------------------------------+ | valueProof | rootHash | merkelTree根哈希值 | +-------------------+------------+--------------------------------------+ | owner | string | 当前拥有者 | +-------------------+------------+--------------------------------------+ | contractAddress | string | 所在合约地址 | +-------------------+------------+--------------------------------------+ | tempValue | string | 未确认的流转记录 | +-------------------+------------+--------------------------------------+ | status | string | 是否确认,“0”:未确认,“1”:已确认 | +-------------------+------------+--------------------------------------+ 12. 根据资产唯一编号获取资产流转记录 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ **简要描述:** - 根据资产唯一编号获取资产流转记录 **请求URL:** - ``http://localhost:3001/getTokenTransfe`` **请求方式:** - POST **参数:** +----------+--------+----------+------------------------+ | 参数名 | 必选 | 类型 | 说明 | +==========+========+==========+========================+ | type | 是 | number | 类型(详见配置说明) | +----------+--------+----------+------------------------+ | key | 是 | number | 资产唯一编号 | +----------+--------+----------+------------------------+ **请求示例** :: { "type": "10", "key": 1 } **返回示例** :: { "success": true, "statusCode": 200, "message": "查询成功", "data": { "confirmedList": [{ "time": "1590139186911", "user": "0x292103a4b1d06d42bab4fee2cf3721485ac12b0b" }] } } **返回参数说明** +--------------+-----------+----------------+ | 参数名 | 类型 | 说明 | +==============+===========+================+ | statusCode | number | 状态码 | +--------------+-----------+----------------+ | success | boolean | true / false | +--------------+-----------+----------------+ | message | string | 异常说明 | +--------------+-----------+----------------+ | data | object | 查询信息 | +--------------+-----------+----------------+ +------------------+---------+--------------------+ | data参数名 | 类型 | 说明 | +==================+=========+====================+ | confirmedList | array | 已确认的流转记录 | +------------------+---------+--------------------+ | confirmingList | array | 未确认的流转记录 | +------------------+---------+--------------------+ **状态码** - 服务异常状态码 501:find db异常 502:update db异常 - 业务异常状态码 610:初始化MerkleTools失败 611:获取合约失败 612:makeTree数据初始化失败 614:初始化标签时,rpc调用addKVLeaf失败 617:入厂时候rpc调用modifyTraceValue异常 618:入厂时候rpc调用getTraceValue异常 619:该用户无权限操作此数据 621:入厂时候key不合法 622:签名验证失败 623:用户未登录 624:上链未确认 625:校验失败 626:调用合约出错 627:调用rpc出错 628:查询资产为空 629:资产唯一编号不合法 630:注册失败 631:密码错误 632:登录失败 633:keyStore登录解析keystore失败 634:登录失败,请用keyStore方式登录 635:设置缓存时候,验签失败 636:退出失败