5.4.3.5 密钥托管模式下调用链码接口

  链下系统通过城市节点网关调用链码的交易处理函数时,需要按照接口说明在请求中加入相应的请求参数,调用节点网关后,节点网关会返回链码的执行结果。

  1. 接口地址: https://节点网关地址/api/fabric/v1/node/reqChainCode

    该接口不等交易落块结果直接响应结果,可以调用“获取交易信息接口”根据交易ID查询落块结果;

    注:用户参与服务成功后可以在服务详情页面查看并下载应用链下业务系统访问链上智能合约所需要的应用服务配置参数、节点网关地址和应用接入密钥对,如下图:

  2. 通讯方式:POST

  3. 签名算法:详见5.4.3.1应用接入签名算法

  4. 请求参数

序号 字段名 字段 类型 必填 备注
1 信息头 header Map
2 信息体 body Map
3 签名值 mac String
header:
1 用户唯一标示 userCode String
2 应用唯一标识 appCode String
3 用户与应用ID tId String
body:
1 用户名 userName String
2 随机字符串 nonce String 使用base64编码的
24位随机byte数据
3 链码Code chainCode String
4 方法名称 funcName String
5 请求参数 args String[]
6 临时数据 transientData Map<string,string>

  示例:

{
    "header":{
        "userCode":"USER0001202004161009309407413",
        "appCode":"app0001202004161017141233920",
        "tId":""
    },
    "mac":"MEQCICJpE1jfeJKtw/ZboVuKSLy2RmmSdkhrEVPGFJhm9IaIAiA/Qqs6RNz0ndSS4/AFSwBj7vC76Py1hXnqO5zMD9pNtA==",
    "body":{
        "userName":"",
        "nonce":"lgH7Ozfv6npqg9D3pSbq9c6o+rAcpa5D","chainCode":"cc_app0001202004161017141233920_00",
        "funcName":"set",
        "args":["{\"baseKey\":\"test2020048\",\"baseValue\":\"this is string \"}"],
        "transientData":{}
    }
}

  5. 响应参数

序号 字段名 字段 类型 必填 备注
1 信息头 header Map
2 信息体 body Map
3 签名值 mac String
header:
1 响应标识 code int 0:校验成功
-1:校验失败
2 响应信息 msg String code=0时可为null
body:
1 块信息 blockInfo blockInfo code不为0时为空
2 链码响应结果 ccRes ccRes code不为0时为空
blockInfo:
1 交易Id txId String
2 块哈希 blockHash String 同步接口返回块哈希
3 状态值 status Int [详见交易状态描述]
ccRes:
1 链码响应状态 ccCode Int 200:成功
500:失败
2 链码响应结果 ccData Str 具体链码响应的结果

  示例:

{
  "header": {
    "code": 0,
    "msg": "处理成功"
  },
  "mac": "MEUCIQCBtfO1AfYkoJ2hIlp8CfKK1iuhVEAYkPY8YFRAdvPJlAIgDjSqYgwlORJRyF6KZPU/uC5Fx/DxXxu9VgKwU9+JhjU=",
  "body": {
    "blockInfo": {
      "txId": "a144149150ee615a9d11c68485600f43dc2c3eb2a98d7b36de53a6b99e03c495",
      "blockHash": "",
      "status": 0
    },
    "ccRes": {
      "ccCode": 200,
      "ccData": "SUCCESS"
    }
  }
}
Copyright 北京红枣科技有限公司

results matching ""

    No results matching ""

    results matching ""

      No results matching ""