【区块链2.0 以太坊学习笔记5】部署智能合约到测试链

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处! https://sp4rkw.blog.csdn.net/article/details/86726843

MetaMask

MetaMask是一款在谷歌浏览器Chrome上使用的插件类型的以太坊钱包,该钱包不需要下载,只需要在谷歌浏览器添加对应的扩展程序即可,非常轻量级,使用起来也非常方便。

安装MetaMask

chrome浏览器安装MetaMask,直接用MetaMask创建钱包或者通过myetherwallet.com创建钱包,然后用MetaMask导入钱包私钥即可。

Hint:需要梯子,推荐安装MetaMask的中文版在这里插入图片描述

添加完一路默认下来即可,中间有个让你确认助记的地方,按照上一步的句子选区单词即可(密码,助记,还有后续如果你要导出私钥,请在本地存好)

测试环境申请代币

先将网络切换为Ropsten测试网络
在这里插入图片描述
然后点击存入-测试水管-从水管获取Ropsten网络的 Ether
在这里插入图片描述
之后会跳转到https://faucet.metamask.io/ 页面,点击request 1 ether from faucet,不断申请测试代币
在这里插入图片描述

将智能合约发布到测试环境

  1. 打开http://remix.ethereum.org/网站,url后会自动补齐当前最新版的solidity版本。如果我们写的是pragma solidity ^0.4.0;,则需要手动调一下编译器的版本
    在这里插入图片描述

  2. 将自己的代码直接粘贴到左侧编辑器中,会自动编译查错,正常编译通过后,可以在右侧面板点击run选项。run选项内的各选项解释如下:

    • Environment指合约要部署的网路环境,JavaScript VM是本地的测试网络,injected Web3是发布到公链。

    • Account指部署合约的钱包地址,因为部署合约需要往公链上写数据,所以需要消耗代币。选择本地测试网络的话,有默认的五个免费的钱包,里面各有100以太币。选择部署到公链的话,通过选择MateMask的网络环境(主网或两个测试网络),Account会显示对应的网络环境下的钱包地址(钱包中必须要有代币才行)

    • Gas limit和Value默认即可

  3. 完后下方可以选择solidity代码中声明的类,也就是我们要部署到网络中的类(contract)。
    在这里插入图片描述

  4. 之后点击create,支付完所需的代币手续费后,等待部署完成即可,部署成功后便可以在下方看到合约的地址信息,及合约中暴露出来的各种方法,如getAge、setAge等,可以调用这些方法从部署在网络上的合约中写入数据(花费代币)及读取数据(免费),调用kill方法时会执行析构函数selfdestruct,从网络中销毁合约。

展开阅读全文

没有更多推荐了,返回首页