检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
"cce:node:list", "ecs:cloudServers:listServerInterfaces", "ecs:cloudServers:list", "ecs:serverInterfaces:get"
概述 为了能在应用程序中使用区块链服务,可参考本章节完成应用程序的开发。 开发完成后,应用程序可以调用合约将业务数据发送到链上或从链上进行查询,以及查询区块链的块高、查看某个区块的详情和查看某笔交易的详情等。 父主题: 应用程序开发
huaweicloud.com/repository/goproxy/ go env -w GONOSUMDB=* Go合约SDK文件导入本地项目后,若路径变红,可在Go Land编译器中启用 go mod: File->Settings->GO->Go Module->勾选 Enable
invoke(ChaincodeStub stub) { } } init方法:在链代码实例化或升级时被调用,完成初始化数据的工作。 Invoke方法:更新或查询账本数据状态时被调用, 需要在此方法中实现响应调用或查询的业务逻辑。 链代码结构 Java语言的链代码结构如下: package main
size: i32):void{ // 实际调用合约文件的init()接口 } // 合约被调用(wasm_invoke)接口。包含合约文件的invoke()接口,供合约使用者通过SDK的wasm_invoke接口调用。 export function wasm_invoke(buffer_offset:
示例Demo目录结构 文件 介绍 App.java 业务端调用的示例,客户端的初始化配置。 Contract.java 通过合约对业务数据交互。对数据有修改的操作如插入和删除,需要调用其中的send方法。对数据的查询操作如查询某个键的历史,需要调用其中的query方法。 BlockUtil.java
组织用户解密消息 功能介绍 组织用户解密消息接口,调用接口需要配置组织用户的TLS证书。组织用户的TLS证书可以从BCS服务实例概览页面下载配置文件获得。 URI POST /v1/e2ee/org/decrypt 请求参数 表1 请求Body参数 参数 是否必选 参数类型 描述
链ID。 name String 合约名称。 function String 调用合约中的方法名。 args String[] 合约方法参数。 返回值 类型 说明 RawMessage 消息体,用于合约调用。 查询请求消息发送。 接口方法 ContractAction.class public
throws ContractException { } // 功能:合约被调用(invoke)接口,需要合约开发者在智能合约中实现此接口,将主要的合约执行逻辑,放到此接口内,供合约使用者调用。 // 入参:stub是智能合约合约SDK为本次合约执行交易准备的上下文
链ID。 name String 合约名称。 function String 调用合约中的方法名。 args String[] 合约方法参数。 返回值 类型 说明 RawMessage 消息体,用于合约调用。 背书请求消息构建。 接口方法 ContractRawMessage.class
HBS除了提供web界面管理运维资源之外,还提供了API调用方式,便于用户集成自有管理系统,实现定制化管理入口。可以使用本文档提供API对华为云区块链引擎服务进行相关操作,如创建、查询等。具体API请参考API(华为云区块链引擎)。 在调用华为云区块链引擎服务API之前,请确保已经充分了解华为云区块链引擎服务基本概念与知识。
组织用户加密消息 功能介绍 组织用户加密消息接口,调用接口需要配置组织用户的TLS证书。组织用户的TLS证书可以从BCS服务实例概览页面下载配置文件获得。 URI POST /v1/e2ee/org/encrypt 请求参数 表1 请求Body参数 参数 是否必选 参数类型 描述
区块链应用端调用链代码报错: “Expected only one set of consistent proposal responses but got testuser: 1000” 答:区块链应用端向Peer节点发送交易提案背书失败,请检查链代码日志。 区块链应用端调用链代码报错:
使用自研的容器合约环境集成Solidity的智能合约。 外部搭建Solidity Web IDE,生成测试需要的合约安装字节码和合约调用字节码。 将字节码二进制通过Hex编码字符串作为合约调用参数。 Solidity合约默认名称为:NATIVE_CUSTOM_EVM。 暂不支持event api。 S
e.js等。应用程序和链代码开发语言无强对应关系,只要应用程序能通过SDK来调用链代码即可。 Hyperledger Fabric增强版对应用程序开放的接口均为gRPC协议,与开源版本保持一致,通常使用SDK进行调用,详情可参考Hyperledger Fabric增强版SDK接口定义。
e) pb.Response { // 在该方法中实现链代码运行中被调用或查询时的处理逻辑 // 编写时可灵活使用stub中的API } //主函数,需要调用shim.Start()方法 func main() { err := shim
BCS除了提供web界面管理运维资源之外,还提供了API调用方式,便于用户集成自有管理系统,实现定制化管理入口。可以使用本文档提供API对区块链服务进行相关操作,如创建、查询、删除等。具体API请参见API(Hyperledger Fabric增强版)。 在调用区块链服务API之前,请确保已经充分了解区块链服务基本概念与知识。
入和删除,需要调用其中的send方法。对数据的查询操作如查询某个键的历史,需要调用其中的query方法。 block.go 用于从区块上获取数据。 tx.go 用于从交易上获取数据。 config.go 客户端的初始化配置。 readme.md 提供详细的接口调用示例。 父主题:
olang、Solidity、Java、C++、Python、Node.js等。应用程序和链代码开发语言无强对应关系,只要应用程序能通过SDK来调用链代码即可。 您需要购买区块链实例。 Fabric架构版本的区块链实例支持在CCE集群和边缘集群上部署,具体可参见基于CCE集群。
invoke)被自动调用 func (t *SimpleChaincode) Invoke(stub shim.ChaincodeStubInterface) pb.Response { fmt.Println("ex02 Invoke") // 获取用户传递给调用链代码的函数名称及参数