云服务器内容精选

  • 合约结构 Go语言合约由合约文件及依赖包构成,包含包声明、依赖包导入、智能合约的结构体定义和方法定义。 合约文件中,用户可自定义结构体以及合约函数。以下内容不可更改: package名:package usercontract 函数的签名:NewSmartContract()、Init(stub contractapi.ContractStub)、Invoke(stub contractapi.ContractStub) 合约的结构如下: package usercontract // 引入必要的包 import ( "git.huawei.com/poissonsearch/wienerchain/contract/docker-container/contract-go/contractapi" ) // 声明合约的结构体 type example01 struct {} // 创建合约 func NewSmartContract() contractapi.Contract { return &example01{} } // 合约的初始化(Init)接口。将合约启动时,需要首先执行且只需要执行一次的逻辑放到此方法中。 func (e *example01) Init(stub contractapi.ContractStub) ([]byte, error) { // 编写时可灵活使用stub中的API } // 合约被调用(invoke)接口。将主要的合约执行逻辑,放到此方法内,供合约使用者调用。 func (e *example01) Invoke(stub contractapi.ContractStub) ([]byte, error) { // 编写时可灵活使用stub中的API } 父主题: Go合约开发
  • 合约结构 Go语言合约由合约文件及依赖包构成,包含包声明、依赖包导入、智能合约的结构体定义和方法定义。 合约文件中,用户可自定义结构体以及合约函数。以下内容不可更改: package名:package usercontract 函数的签名:NewSmartContract()、Init(stub contractapi.ContractStub)、Invoke(stub contractapi.ContractStub) 合约的结构如下: package usercontract// 引入必要的包 import ( "git.huawei.com/poissonsearch/wienerchain/contract/docker-container/contract-go/contractapi") // 声明合约的结构体 type example01 struct {}// 创建合约func NewSmartContract() contractapi.Contract { return &example01{}}// 合约的初始化(Init)接口。将合约启动时,需要首先执行且只需要执行一次的逻辑放到此方法中。func (e *example01) Init(stub contractapi.ContractStub) ([]byte, error) { // 编写时可灵活使用stub中的API } // 合约被调用(invoke)接口。将主要的合约执行逻辑,放到此方法内,供合约使用者调用。func (e *example01) Invoke(stub contractapi.ContractStub) ([]byte, error) { // 编写时可灵活使用stub中的API } 父主题: Go合约开发