关于BSC链智能合约模式DAPP开发流程介绍

简介: kill:selfdestruct 是 ethereum 智能合约自带的自毁程序,kill对此方法进行了封装,只有合约的拥有者才可以调用该方法

主要函数
kill:selfdestruct 是 ethereum 智能合约自带的自毁程序,kill对此方法进行了封装,只有合约的拥有者才可以调用该方法;
greet:返回合约 greeter 里的 greeting属性的值;
代码运行分析
第一步 生成智能合约代码对象
我们先把合约代码smartContract_example01.sol 压缩为一行.新建一个ssh session, 切换到geth用户环境su - geth, 然后输入:cat smartContract_example01.sol | tr '\n' ' '. 切换到以太坊控制台,把合约代码保存为一个变量:

var greeterSource = 'contract mortal { address owner; function mortal() { owner = msg.sender; } function kill() { if (msg.sender == owner) selfdestruct(owner); } } contract greeter is mortal { string greeting; function greeter(string _greeting) public { greeting = _greeting; } function greet() constant returns (string) { return greeting; } }'
复制
第二步 编译合约代码
然后编译合约代码:

var greeterCompiled = web3.eth.compile.solidity(greeterSource)
复制
greeterCompiled.Token.code可以看到编译好的二进制代码 greeterCompiled.Token.info.abiDefinition可以看到合约的ABI

第三步 设置希望返回的字符串
var _greeting = "Hello World!"
复制
第四步 部署合约
接下来我们要把编译好的合约部署到网络上去.

首先我们用ABI来创建一个javascript环境中的合约对象:

var greeterContract = web3.eth.contract(greeterCompiled.greeter.info.abiDefinition);
复制
我们通过合约对象来部署合约:

var greeter = greeterContract.new(_greeting,{from:web3.eth.accounts[0], data: greeterCompiled.greeter.code, gas: 300000}, function(e, contract){

if(!e) {
  if(!contract.address) {
    console.log("Contract transaction send: TransactionHash: " + contract.transactionHash + " waiting to be mined...");
  } else {
    console.log("Contract mined! Address: " + contract.address);
    console.log(contract);
  }
}

})
复制
greeterContract.new方法的第一个参数设置了这个新合约的构造函数初始化的值

相关文章
|
安全 区块链
ARB链智能合约开发运营版丨ARB链智能合约系统开发详细程序/步骤指南/方案逻辑/源码出售
Environment construction: Before developing a smart contract system on the ARB chain, a corresponding development environment needs to be established. This may include setting up nodes for the ARB chain, development tools, and testing networks.
|
存储 区块链
BSC链质押代币模式系统开发详情与模式
随着时间的推移,智能合约代码也越来越容易操控,越来越容易整合各类契约关系
|
存储 算法 安全
BSC链质押项目系统开发|DAPP开发案例
区块链属于分布式账本技术的一种,每一条链都相当于一个独立的账本
|
存储 区块链 数据安全/隐私保护
BSC链DAPP合约技术系统开发指南与需求
最重要的事情是为团队提供充分的理由说明去中心化是有意义的
|
存储 区块链 安全
OP链上智能合约质押项目系统开发(项目方案)技术原理
去中心化金融需要去中心化的发行方式与之匹配,从而完善去中心化金融闭环
|
安全 区块链
DAPP代币合约BSC链系统开发详细程序丨BSC链DAPP合约代币系统开发(项目案例)及源码逻辑
  Dapp的核心是智能合约,它定义了应用程序在区块链上运行的规则和逻辑。在设计智能合约时,需要仔细考虑业务逻辑,并确保安全性和可靠性。使用Solidity等语言编写智能合约,并进行测试和部署。
|
前端开发 安全 Java
BSC链DAPP智能合约NFTswap/IPPswap/Defiswap/OMNIswap系统开发(开发方案)/项目程序/案例源码
  什么是智能合约DApp   智能合约DApp是计算机程序,通过它,交易双方可以共同完成交易。如果在执行过程中发生了一系列变化,那么智能合约将会记录这些变化并自动执行这些变化。
|
存储 人工智能 安全
BSC链DAPP智能合约项目系统开发案例分析/需求项目/源码逻辑
  区块链技术的去中心化和安全性质,使得它与人工智能技术的结合更加有意义。区块链可以提供安全的数据存储和传输,而人工智能可以提供更加智能化和自动化的操作方式。
|
存储 人工智能 供应链
BSC币安智能链DAPP发行代币合约模式系统开发成熟技术/案例介绍/方案项目/源码平台
  区块链+人工智能的结合可以实现更加智能化和自动化的操作方式,使得操作更加简单、高效和安全。例如,在智能合约中,人工智能可以自动检测合约中的条件并执行相应的操作,大大减少了人工干预的需求