检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
SDK接口 合约SDK提供如下API接口,可以在合约文件中进行调用。这些API按照功能可以划分为: 表1 stub接口 接口 说明 FuncName() string 获取智能合约请求中指定的智能合约函数名称。 Parameters() [][]byte 获取请求参数。 ChainID()
SDK配置 表1 Go类型的合约SDK 合约类型 SDK下载 备注 Go 链接 具体使用可参考合约示例和合约安装。 父主题: Go合约开发
Go应用程序开发 SDK客户端配置 SDK客户端调用 示例Demo 父主题: 应用程序开发
文件下载 接口方法 func (bc *BsClient) DownloadFile(filePath, fileName string, versionId int) error 参数说明 参数 类型 说明 filePath string 文件下载到本地的路径。 fileName
组织解密 接口方法 func (client *GatewayClient) DecryptDataWithE2EE(consensusOrgID, decOrgID string, txID string) (data string, err error) 参数说明 参数 类型
通用方法 相关类 GatewayClient对象包含获取服务节点、获取各种类型的消息构造器及交易ID等方法,基于SDK开发时,必须先构造该对象。 client.GatewayClient BsClient对象包含富媒体文件上链、下载、操作记录查询等方法,使用区块链富媒体存储相关功能时,必须先构造该对象。
组织加密 接口方法 func (client *GatewayClient) EncryptDataWithE2EE(consensusOrgID, encOrgID string, decOrgIDs []string, data string, options ...interface{})
合约结构 Go语言合约由合约文件及依赖包构成,包含包声明、依赖包导入、智能合约的结构体定义和方法定义。 合约文件中,用户可自定义结构体以及合约函数。以下内容不可更改: package名:package usercontract 函数的签名:NewSmartContract()、Init(stub
SDK配置 linux环境,SDK的编译、运行,需要手动下载并配置openssl,单击链接下载openssl[链接] 解压openssl,复制openssl文件夹到目录/usr/local/include/下 执行库的导入命令:export LD_LIBRARY_PATH=/us
文件上链 接口方法 func (bc *BsClient) UploadFile(filePath, fileName string) (*UploadFileResponse, error) 参数说明 参数 类型 说明 filePath string 待上链文件在本地的路径。当前支持不大于100MB的任意格式文件。
利用合约查询数据 查询请求消息构建 接口函数 func (msg *ContractRawMessage) BuildInvokeMessage(chainID string, name string, function string, args []string) (*common
Go语言链代码开发 链代码结构 链代码相关的API 链代码示例(1.4风格) 链代码示例(2.0风格) 链代码调测 父主题: 链代码开发
其他查询 查询区块块高 查询区块详情 查询交易执行结果 利用交易ID查询交易详情 查询文件历史版本 查询文件操作记录 父主题: Go SDK介绍
查询区块详情 消息构建。 接口方法 func (msg *QueryRawMessage) BuildBlockRawMessage(chainID string, blockNum uint64) (*common.RawMessage, error) 参数说明 参数 类型 说明
示例Demo 应用程序开发需要使用go mod,因此请确保GO111MODULE为on、镜像源配置。请确保可正常访问华为云镜像网站,环境设置命令如下 go env -w GO111MODULE=on go env -w GOPROXY=https://repo.huaweicloud
Go SDK Go SDK升级过程如下: 删除旧版本huaweichain SDK。 下载新版本的SDK文件解压至原有的SDK文件路径。 表1 Go SDK版本与变更 版本号 下载 说明 0.4.9 链接 适配实例版本1.0.2.1。 0.2.15 链接 适配实例版本1.0.2.0。
链代码结构 本章以Go语言为例来介绍。链代码即一个Go文件,创建好文件后进行函数开发等操作。 当前支持两种方式编写链码:1.4风格(使用shim包)和2.2风格(使用fabric-contract-api-go包)。 区块链服务BCS支持使用两种风格编写的链代码。 链代码接口 Fabric架构版本的区块链实例:
查询文件历史版本 接口方法 func (bc *BsClient) GetFileHistory(fileName string) ([]*bstore.FileHistory, error) 参数说明 参数 类型 说明 fileName string 查询的链上文件名。 返回值
查询区块块高 消息构建。 接口方法 func (msg *QueryRawMessage) BuildLatestChainStateRawMessage(chainID string) (*common.RawMessage, error) 参数说明 参数 类型 说明 chainID
查询交易执行结果 消息构建。 接口方法 func (msg *QueryRawMessage) BuildTxRawMessage(chainID string, txHash []byte) (*common.RawMessage, error) 参数说明 参数 类型 说明 chainID