Remix编写智能合约

编写代码

Remix 在线编辑器

https://ethereum.github.io/browser-solidity/#optimize=false&version=soljson-v0.4.19+commit.c4cbbb05.js0

记得在setting里选择对应版本

在线调试

当complie没出现问题时, 就可以在线运行调试了

实现部署

点击Run, create, 实现部署

调用接口

在部署完之后会出现下面界面, 包括合约名字



如何调用接口?

只需要在对应的接口上输入参数, 调用的话,点击前面的接口名就能在下面看到输出

经过以上两步 我们应该已经调试好合约, 下面就是部署在私有链上了

Geth实现私有链部署合约和调用接口

部署合约

首先在ubantu安装好Geth环境, 配置好私有链,具体可参考此博客

https://blog.csdn.net/qq874455953/article/details/83692732

然后我们打开web3命令行

然后在Remix的complies界面点击detail

找到remix为我们自动生成的部署合约代码

复制此段代码 然后放到web3命令行

注意 生成的默认是第一个账户发起的

from: web3.eth.accounts[0]

需要解锁此用户才可以

personal.unlockAccount(eth.accounts[0])

然后挖矿确认 部署合约

miner.start();admin.sleepBlocks(1);miner.stop()

显示已经部署成功, 而且显示了合约的地址, 地址需要复制下来后面需要用

调用合约

获得合约实例

方法1:

其实当你在web3命令行运行remix赋值的命令语句时, 此时已经是有一个实例了, 对于我上面的例子,此时的实例就是 fitbody , 注意不是fitbodyContract , fitbodyContract 相当于一个类, 而fitbody是合约类生成的合约实例, 我们用的就是合约实例。这时的fitbody相当于下文的MyContract

这是方法2:

调用合约首先需要获得合约的实例,通过实例调用

var ac0 = web3.eth.accounts[0];

var MyContract = web3.eth.contract(<合约abi>).at(<合约地址>);

合约abi 通过编译本地合约代码获得

把remix的合约放到ubantu里 保存为code.sol

solc --abi code.tol

需要自行安装solidity编译器

而合约地址刚才已经保存。

通过实例调用合约接口

获得实例MyContract后可以通过下面方法调用

一般是需要先unLock调用的地址账户的

这种是对内容进行修改,或者合约需要发送以太币时的调用方式,执行完可获得交易的hash

MyContract.<你的合约接口, 这里一般会自动补全>.sendTransaction(<参数列表>, {from:<调用合约账户>, value : <附送的以太币>, gas: 10000000});

这种是进行查询时的接口调用方式

 MyContract.<接口名>.call(<参数>);

Remix+Geth 实现智能合约部署和调用详解的更多相关文章

  1. 使用 Browser-solidity 在 Go-Ethereum1.7.2 上进行简单的智能合约部署

    目录 目录 1.基本概念 1.1.什么是智能合约? 1.2.什么是Solidity? 1.2.1.Solidity的语言特性 1.3.什么是 Browser-solidity? 2.Browser-s ...

  2. EOS智能合约开发(四):智能合约部署及调试(附编程示例)

    EOS智能合约开发(一):EOS环境搭建和创建节点 EOS智能合约开发(二):EOS创建和管理钱包 EOS智能合约开发(三):EOS创建和管理账号 部署智能合约的示例代码如下: $ cleos set ...

  3. solidity 智能合约之间的调用

    智能合约之间的调用 在区块链上,有些功能往往无法通过一个智能合约完成,此时便会用到智能合约之间的调用.本篇文章带大家通过具体示例来了解一下智能合约之间的调用. 在智能合约的编译过程中,有两种情况:调用 ...

  4. Haproxy均衡负载部署和配置文件详解

    HAproxy均衡负载部署和配置文件详解 HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.根据官方数据,其最高极限支持10G ...

  5. web缓存服务器varnish-4.1.6的部署及配置详解

    web缓存服务器varnish-4.1.6的部署及配置详解 1.安装varnish4.1.6安装依赖 yum install -y autoconf automake jemalloc-devel l ...

  6. EOS测试链智能合约部署调用

    ETH与EOS两者智能合约进行简单的对比. 1.编译智能合约(合约编译成.wasm与.abi格式后即可部署到区块链) [root@C03-12U-26 testcontract]# cat testc ...

  7. 区块链入门(5)Truffle 项目实战,Solidity IDE, 智能合约部署

    在上一张我们学习了Truffle项目的创建,部署等相关内容,今天我们就来实战一下. 今天我们要做3件事: 1) 学习搭建一个Solidity IDE(Remix). 2) 使用这个Solidity I ...

  8. SCCM 2007 R2部署、操作详解系列之概念

    站点类型 在安装站点时,您决定它将是主站点还是辅助站点.然后,在安装其他站点时,您可以选择将其安排到层次结构关系中,以便父站点管理子站点,中央站点收集所有站点信息,从而进行集中式管理.也可以根据业务和 ...

  9. Keepalived部署与配置详解

    Keepalive详解 工作原理 Keepalived本质就是为ipvs服务的,它也不需要共享存储.IPVS其实就是一些规则,Keepalived主要的任务就是去调用ipvsadm命令,来生成规则,并 ...

随机推荐

  1. Flarum 的安装与配置

    Flarum 是一款非常棒的开源论坛程序,本鸽子的论坛 就是用 Flarum 搭建的.之前有人问过我 Flarum 如何搭建,所以下面讲一下 Flarum 的搭建过程. 前提 域名需要提前解析. 有一 ...

  2. C++语法小记---同名覆盖

    同名覆盖 子类中的同名成员会覆盖父类中的同名成员,但是在内存中仍然存在,只是无法直接访问,需要加上域名才能访问 子类中的同名函数会覆盖父类中的函数,复写是同名覆盖的一种特殊情况,只要不是多态场景,复写 ...

  3. zabbix自定义监控(当会话登录超过三个就报警)

    安装过程在此省略. 1.agent端去修改配置文件 2.调用自定义内容 vim /etc/zabbix/zabbix_agentd.d/login.conf UserParameter=login-u ...

  4. java8中parallelStream提升数倍查询效率是怎样实现的,来看看这篇文章

    作者:我恰芙蓉王 原文:https://www.cnblogs.com/-tang/p/13283216.html 业务场景 在很多项目中,都有类似数据汇总的业务场景,查询今日注册会员数,在线会员数, ...

  5. 题解 SP1841 【PPATH - Prime Path】

    模拟赛考到了这个题,但我傻傻的用了\(DFS\),于是爆了零 后来才想明白,因为搜索树的分支很多,但答案的深度却又没有那么深,所以在这里\(BFS\),而\(DFS\)一路搜到底的做法则会稳稳地\(T ...

  6. XML转Bean

    XML转Bean有很多方式,我使用的是xtream方式实现xml与bean的互转. 下面是简单的xml转bean /** * XML转换成bean * @param obj * @return yuy ...

  7. 华为云如何使用二次验证码/虚拟MFA/两步验证/谷歌验证器?

    一般点账户名——设置——安全设置中开通虚拟MFA两步验证 具体步骤见链接  华为云如何使用二次验证码/虚拟MFA/两步验证/谷歌验证器? 二次验证码小程序于谷歌身份验证器APP的优势 1.无需下载ap ...

  8. Oracle连接报错之IO异常(The Network Adapter could not establish the connection)

    简单介绍:自己封装oracle jdbc的一些常用功能jar包,自己本机玩没啥问题,给别人玩儿,发现总是抛异常 IO异常(The Network Adapter could not establish ...

  9. laravel 安装语言包

    一.composer依赖网站地址:https://packagist.org/ 二.在搜索框输入: laravel-lang 三.点击进入,根据自己的版本进行安装: composer require ...

  10. 二手99新iPhone8Plus有锁移动联通版

    原文是维基百科:http://www.bosimedia.com/wiki/IPhone_8#cite_note-1 iPhone8Plus详细介绍 iPhone 8与iPhone 8 Plus 是苹 ...