区块链服务 BCS-应用示例:查询

时间:2023-11-01 16:25:45

查询

Usage:  appdemo querybalance [flags]Flags:  -C, --channel string      channel id (default "mychannel")  -c, --config string       configuration file path (default "./config_test.yaml")  -I, --idcc string         idendity chaincode name (default "IDChaincode")  -o, --orgid string        organization id (default "org1")  -p, --protectpwd string   protect pwd  -T, --txcc string         transaction chaincode name (default "TxChaincode")  -u, --userid string       user id./appdemo querybalance -p test -u A

查询代码:

  1. 调用sdk提供的InitBalance接口初始化余额。
  2. 调用fabirc sdk发送交易。
    get balance setup.ChainCodeID = txchaincode transRec := sdk_client.TransRecord{} fmt.Println("query balance") resps, err := sdk_client.Query(setup, "QueryBalance", [][]byte{[]byte(addrA)}) if err != nil {  fmt.Println("Fail to query balance :", err.Error())  return err } err = json.Unmarshal(resps[0].ProposalResponse.GetResponse().Payload, &transRec) if err != nil {  fmt.Println("unmarshal query result error: ", err.Error())  return err }

    decrypt balance curbalance, err := pswapi_sdk.Decrypt(transRec.Balance, userdata.PriKey, propwd) if err != nil {  fmt.Println("sdk Decrypt error: ", err.Error())  return err } fmt.Println("current balance:" + curbalance.String())
support.huaweicloud.com/devg-bcs/bcs_devg_0025.html