5. queryCpt
基本信息
- 接口名称:com.webank.weid.rpc.CptService.queryCpt
- 接口定义:ResponseData<Cpt> queryCpt(Integer cptId)
- 接口描述: 根据CPT编号查询CPT信息。
接口入参: java.lang.Integer
名称 | 类型 | 非空 | 说明 | 备注 |
---|---|---|---|---|
cptId | Integer | Y | cptId编号 |
接口返回: com.webank.weid.protocol.response.ResponseData<Cpt>;
名称 | 类型 | 说明 | 备注 |
---|---|---|---|
errorCode | Integer | 返回结果码 | 此接口返回的code |
errorMessage | String | 返回结果描述 | |
result | Cpt | CPT内容,见下 | |
transactionInfo | TransactionInfo | 交易信息 |
com.webank.weid.protocol.response.TransactionInfo
名称 | 类型 | 说明 | 备注 |
---|---|---|---|
blockNumber | BigInteger | 交易块高 | |
transactionHash | String | 交易hash | |
transactionIndex | BigInteger | 交易索引 |
com.webank.weid.protocol.base.Cpt
名称 | 类型 | 说明 | 备注 |
---|---|---|---|
cptJsonSchema | Map<String, Object> | Map类型的cptJsonSchema信息 | |
cptBaseInfo | CptBaseInfo | CPT基础数据,见下 | |
cptMetaData | CptMetaData | CPT元数据内部类,见下 |
com.webank.weid.protocol.base.CptBaseInfo
名称 | 类型 | 说明 | 备注 |
---|---|---|---|
cptId | Integer | cpId编号 | |
cptVersion | Integer | 版本号 |
com.webank.weid.protocol.base.Cpt.MetaData
名称 | 类型 | 说明 | 备注 |
---|---|---|---|
cptPublisher | String | CPT发布者的WeIdentity DID | WeIdentity DID格式数据 |
cptSignature | String | 签名数据 | cptPublisher与cptJsonSchema拼接的签名数据 |
updated | long | 更新时间 | |
created | long | 创建日期 |
此方法返回code
enum | code | desc |
---|---|---|
SUCCESS | 0 | 成功 |
TRANSACTION_TIMEOUT | 160001 | 超时 |
TRANSACTION_EXECUTE_ERROR | 160002 | 交易错误 |
UNKNOW_ERROR | 160003 | 未知异常 |
ILLEGAL_INPUT | 160004 | 参数非法 |
CPT_NOT_EXISTS | 500301 | CPT不存在 |
调用示例
- CptService cptService = new CptServiceImpl();
- Integer cptId = Integer.valueOf(1017);
- ResponseData<Cpt> response = cptService.queryCpt(cptId);
- 返回数据如下:
- result:(com.webank.weid.protocol.base.Cpt)
- cptBaseInfo:(com.webank.weid.protocol.base.CptBaseInfo)
- cptId: 1017
- cptVersion: 1
- cptJsonSchema:(java.util.HashMap)
- $schema: http://json-schema.org/draft-04/schema#
- type: object
- properties:(java.util.LinkedHashMap)
- age:(java.util.LinkedHashMap)
- description: the age of certificate owner
- type: number
- gender:(java.util.LinkedHashMap)
- description: the gender of certificate owner
- enum:(java.util.ArrayList)
- [0]:F
- [1]:M
- type: string
- name:(java.util.LinkedHashMap)
- description: the name of certificate owner
- type: string
- required:(java.util.ArrayList)
- [0]:name
- [1]:age
- metaData:(com.webank.weid.protocol.base.Cpt$MetaData)
- cptPublisher: did:weid:101:0x39e5e6f663ef77409144014ceb063713b65600e7
- cptSignature: G/YGY8Ftj9jPRdtr4ym+19M4/K6x9RbmRiV9JkryXeQGFr8eukDCBAcbinnNpF2N3Eo72bvxNqJOKx4ohWIus0Y=
- created: 1560415607673
- updated: 0
- errorCode: 0
- errorMessage: success
- transactionInfo:null
时序图
sequenceDiagram调用者->>WeIdentity SDK : 传入指定的cptIdopt 参数校验Note over WeIdentity SDK:检查传入的cptId是否为空或负数WeIdentity SDK->>WeIdentity SDK:报错,提示weid不合法并退出endWeIdentity SDK->>区块链节点: 调用合约查询链上的指定cpt对应的信息区块链节点—>>WeIdentity SDK:返回WeIdentity SDK->>WeIdentity SDK:根据合约返回的值构建返回的java对象WeIdentity SDK—>>调用者:返回调用结果