??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲黄色精品,日韩久久久久,日韩免费特黄一二三区 http://www.aygfsteel.com/waterjava/category/55337.html我胡汉三又回来了 zh-cn Mon, 16 Mar 2020 05:57:35 GMT Mon, 16 Mar 2020 05:57:35 GMT 60 IPFS参考网?/title> http://www.aygfsteel.com/waterjava/archive/2020/03/14/435258.html狼爱上狸 狼爱上狸 Sat, 14 Mar 2020 03:01:00 GMT http://www.aygfsteel.com/waterjava/archive/2020/03/14/435258.html http://www.aygfsteel.com/waterjava/comments/435258.html http://www.aygfsteel.com/waterjava/archive/2020/03/14/435258.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/435258.html http://www.aygfsteel.com/waterjava/services/trackbacks/435258.html https://ipfs.github.io/public-gateway-checker/ ]]> 安装node-canvas时win_delay_load_hook.c错误 http://www.aygfsteel.com/waterjava/archive/2020/02/22/435150.html狼爱上狸 狼爱上狸 Sat, 22 Feb 2020 08:33:00 GMT http://www.aygfsteel.com/waterjava/archive/2020/02/22/435150.html http://www.aygfsteel.com/waterjava/comments/435150.html http://www.aygfsteel.com/waterjava/archive/2020/02/22/435150.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/435150.html http://www.aygfsteel.com/waterjava/services/trackbacks/435150.html ]]>IPFS问题 http://www.aygfsteel.com/waterjava/archive/2020/01/16/435040.html狼爱上狸 狼爱上狸 Thu, 16 Jan 2020 06:44:00 GMT http://www.aygfsteel.com/waterjava/archive/2020/01/16/435040.html http://www.aygfsteel.com/waterjava/comments/435040.html http://www.aygfsteel.com/waterjava/archive/2020/01/16/435040.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/435040.html http://www.aygfsteel.com/waterjava/services/trackbacks/435040.html 1.?nbsp; "Gateway": "/ip4/127.0.0.1/tcp/8080"修改为:"Gateway": "/ip4/0.0.0.0/tcp/8080"Q这h机就可以?92.168WEB讉K了?/div>2.把WINDOWS防火墙入站的8080端口打开Q这样在局域网p讉K了?/div>
]]>
【我的区块链之\? 谈一谈IPFS原理及玩?/title> http://www.aygfsteel.com/waterjava/archive/2020/01/12/435032.html狼爱上狸 狼爱上狸 Sun, 12 Jan 2020 08:17:00 GMT http://www.aygfsteel.com/waterjava/archive/2020/01/12/435032.html http://www.aygfsteel.com/waterjava/comments/435032.html http://www.aygfsteel.com/waterjava/archive/2020/01/12/435032.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/435032.html http://www.aygfsteel.com/waterjava/services/trackbacks/435032.html ]]> 入门 WebpackQ看q篇够?/title> http://www.aygfsteel.com/waterjava/archive/2020/01/04/435018.html狼爱上狸 狼爱上狸 Sat, 04 Jan 2020 09:22:00 GMT http://www.aygfsteel.com/waterjava/archive/2020/01/04/435018.html http://www.aygfsteel.com/waterjava/comments/435018.html http://www.aygfsteel.com/waterjava/archive/2020/01/04/435018.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/435018.html http://www.aygfsteel.com/waterjava/services/trackbacks/435018.html https://segmentfault.com/a/1190000006178770#articleHeader3 ]]> 文档计划 | IPFS API参考文?/title> http://www.aygfsteel.com/waterjava/archive/2020/01/03/435016.html狼爱上狸 狼爱上狸 Fri, 03 Jan 2020 11:03:00 GMT http://www.aygfsteel.com/waterjava/archive/2020/01/03/435016.html http://www.aygfsteel.com/waterjava/comments/435016.html http://www.aygfsteel.com/waterjava/archive/2020/01/03/435016.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/435016.html http://www.aygfsteel.com/waterjava/services/trackbacks/435016.html https://www.jianshu.com/p/e38d5f733c81 ]]> IPFS环境搭徏和用ipfs-api讉Kipfs|络 http://www.aygfsteel.com/waterjava/archive/2020/01/03/435015.html狼爱上狸 狼爱上狸 Fri, 03 Jan 2020 09:55:00 GMT http://www.aygfsteel.com/waterjava/archive/2020/01/03/435015.html http://www.aygfsteel.com/waterjava/comments/435015.html http://www.aygfsteel.com/waterjava/archive/2020/01/03/435015.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/435015.html http://www.aygfsteel.com/waterjava/services/trackbacks/435015.html https://blog.csdn.net/mongo_node/article/details/80143631 ]]> 安装solc指定版本 http://www.aygfsteel.com/waterjava/archive/2020/01/01/435010.html狼爱上狸 狼爱上狸 Wed, 01 Jan 2020 04:28:00 GMT http://www.aygfsteel.com/waterjava/archive/2020/01/01/435010.html http://www.aygfsteel.com/waterjava/comments/435010.html http://www.aygfsteel.com/waterjava/archive/2020/01/01/435010.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/435010.html http://www.aygfsteel.com/waterjava/services/trackbacks/435010.html cnpm install -g solc@0.4.22 ]]> Node.js安装及环境配|之Windows?/title> http://www.aygfsteel.com/waterjava/archive/2020/01/01/435009.html狼爱上狸 狼爱上狸 Wed, 01 Jan 2020 04:13:00 GMT http://www.aygfsteel.com/waterjava/archive/2020/01/01/435009.html http://www.aygfsteel.com/waterjava/comments/435009.html http://www.aygfsteel.com/waterjava/archive/2020/01/01/435009.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/435009.html http://www.aygfsteel.com/waterjava/services/trackbacks/435009.html https://www.jianshu.com/p/03a76b2e7e00 ]]> crx文g怎么安装?h览器Chrome打开crx文g的方?/title> http://www.aygfsteel.com/waterjava/archive/2019/12/29/435002.html狼爱上狸 狼爱上狸 Sun, 29 Dec 2019 14:57:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/29/435002.html http://www.aygfsteel.com/waterjava/comments/435002.html http://www.aygfsteel.com/waterjava/archive/2019/12/29/435002.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/435002.html http://www.aygfsteel.com/waterjava/services/trackbacks/435002.html https://www.jb51.net/softjc/402153.html ]]> go调用以太坊rpc写入合约操作中的DATA数据解析Q纯字符串参敎ͼ http://www.aygfsteel.com/waterjava/archive/2019/12/27/434995.html狼爱上狸 狼爱上狸 Fri, 27 Dec 2019 06:49:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/27/434995.html http://www.aygfsteel.com/waterjava/comments/434995.html http://www.aygfsteel.com/waterjava/archive/2019/12/27/434995.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434995.html http://www.aygfsteel.com/waterjava/services/trackbacks/434995.html https://blog.csdn.net/weixin_42608885/article/details/100889008 ]]> 一步步构徏自己的智能合U?/title> http://www.aygfsteel.com/waterjava/archive/2019/12/26/434994.html狼爱上狸 狼爱上狸 Thu, 26 Dec 2019 08:09:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/26/434994.html http://www.aygfsteel.com/waterjava/comments/434994.html http://www.aygfsteel.com/waterjava/archive/2019/12/26/434994.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434994.html http://www.aygfsteel.com/waterjava/services/trackbacks/434994.html https://segmentfault.com/a/1190000014797663 ]]> 如何审计一个智能合U?/title> http://www.aygfsteel.com/waterjava/archive/2019/12/26/434993.html狼爱上狸 狼爱上狸 Thu, 26 Dec 2019 07:37:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/26/434993.html http://www.aygfsteel.com/waterjava/comments/434993.html http://www.aygfsteel.com/waterjava/archive/2019/12/26/434993.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434993.html http://www.aygfsteel.com/waterjava/services/trackbacks/434993.html https://cloud.tencent.com/developer/article/1522230 ]]> 如何调用以太坊智能合U?/title> http://www.aygfsteel.com/waterjava/archive/2019/12/26/434992.html狼爱上狸 狼爱上狸 Thu, 26 Dec 2019 07:31:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/26/434992.html http://www.aygfsteel.com/waterjava/comments/434992.html http://www.aygfsteel.com/waterjava/archive/2019/12/26/434992.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434992.html http://www.aygfsteel.com/waterjava/services/trackbacks/434992.html https://www.cnblogs.com/KRDecad3/p/11745568.html ]]> U钥生成钱包助记词的程 http://www.aygfsteel.com/waterjava/archive/2019/12/24/434984.html狼爱上狸 狼爱上狸 Tue, 24 Dec 2019 02:02:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/24/434984.html http://www.aygfsteel.com/waterjava/comments/434984.html http://www.aygfsteel.com/waterjava/archive/2019/12/24/434984.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434984.html http://www.aygfsteel.com/waterjava/services/trackbacks/434984.html https://www.cnblogs.com/hankal/p/9472920.html ]]> BIP39钱包助记词规?/title> http://www.aygfsteel.com/waterjava/archive/2019/12/24/434983.html狼爱上狸 狼爱上狸 Tue, 24 Dec 2019 02:01:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/24/434983.html http://www.aygfsteel.com/waterjava/comments/434983.html http://www.aygfsteel.com/waterjava/archive/2019/12/24/434983.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434983.html http://www.aygfsteel.com/waterjava/services/trackbacks/434983.html https://www.jianshu.com/p/d5bac6d36dc6 ]]> remix http://www.aygfsteel.com/waterjava/archive/2019/12/22/434980.html狼爱上狸 狼爱上狸 Sat, 21 Dec 2019 16:27:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/22/434980.html http://www.aygfsteel.com/waterjava/comments/434980.html http://www.aygfsteel.com/waterjava/archive/2019/12/22/434980.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434980.html http://www.aygfsteel.com/waterjava/services/trackbacks/434980.html https://remix.ethereum.org/http://remix.hubwiz.com/
https://ethereum.github.io/
]]> Web3与智能合U交互实?/title> http://www.aygfsteel.com/waterjava/archive/2019/12/21/434979.html狼爱上狸 狼爱上狸 Sat, 21 Dec 2019 06:46:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/21/434979.html http://www.aygfsteel.com/waterjava/comments/434979.html http://www.aygfsteel.com/waterjava/archive/2019/12/21/434979.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434979.html http://www.aygfsteel.com/waterjava/services/trackbacks/434979.html 最新内容会更新在主?a style="margin: 0px; padding: 0px; color: #3b5999; text-decoration-line: none;">深入出区块铄?/a> 原文链接:Web3与智能合U交互实?/a>
写在前面 在最初学习以太坊的时候,很多人都是自己创Z太坊节点后,使用geth与之交互。这U用命令行交互的方法虽然让很多E序员感到兴奋(黑客帝国的既视感Q)Q但不可能指望普通用户通过命o行用Dapp。因此,我们需要一U友好的方式Q比如一个web面Q来与智能合U交互,于是问题的答案就?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">web3.js?/p>
Web3.js Web3.js 是以太坊官方的Javascript APIQ可以帮助智能合U开发者用HTTP或者IPC与本地的或者远E的以太坊节点交互。实际上是一个库的集合,主要包括下面几个库:
web3-eth
用来与以太坊区块铑֒合约交互web3-shh
用来控制whisper协议与p2p通信以及q播web3-bzz
用来与swarm协议交互web3-utils
包含了一些Dapp开发有用的功能Web3与geth通信使用的是 JSON-RPC Q这是一U轻量的RPCQRemote Procedure CallQ协议,整个通信的模型可以抽象ؓ下图?/p>
搭徏试?/h2> 在开发初期,我们q没有必要用真实的公链Qؓ了开发效率,一般选择在本地搭建测试链。在本文我们选择?a style="margin: 0px; padding: 0px; color: #3b5999; text-decoration-line: none;">GanacheQ在此之前用的是testrpcQGanache属于它的升版)Q一个图形化试软gQ也有命令行版本Q,可以一键在本地搭徏以太坊区块链试环境Qƈ且将区块铄状态通过囑Ş界面昄出来QGanache的运行界面如下图所C?/p>
从图中可以看到Ganache会默认创?0个̎P监听地址?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">http://127.0.0.1:7545Q可以实时看?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">Current Block?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">Gas Price?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">Gas Limit{信息?/p>
创徏合约 目前以太坊官方全力支持的合约开发环境是Remix IDE Q我们在合约~辑面~写如下代码Q?/p>
pragma solidity ^0.4 .21 ; contract InfoContract { string fName; uint age; function setInfo (string _fName, uint _age ) public { fName = _fName; age = _age; } function getInfo () public constant returns (string, uint ) { return (fName, age); } }
代码很简单,是单的l?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">name?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">age变量赋gdQ接下来切换?run ?tab 下,?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">Environment切换?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">Web3 ProviderQƈ输入我们的测试链的地址http://127.0.0.1:7545
Q这里对q三个选项做一单说明:
Javascript VM
Q简单的Javascript虚拟机环境,Ual习合约~写的时候可以选择Injected Web3
Q连接到嵌入到页面的Web3Q比如连接到MetaMaskWeb3 Provider
Q连接到自定义的节点Q如U有的测试网l?/li>如果q接成功Q那么在下面?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">Account的选项会默认选择 Ganache 创徏的第一个̎户地址。接下来我们点击Create
׃我们的合约部v到我们的试|中。接下来 Remix 的页面不要关闭,在后面编写前端代码时q要用到合约的地址以及ABI
信息?/p>
安装Web3 在这之前Q先在终端创建我们的目Q?/p>
> mkdir info > cd info
接下来?node.js 的包理工具 npm 初始化项目,创徏package.json
文gQ其中保存了目需要的相关依赖环境?/p>
> npm init
一路按回R直到目创徏完成。最后,q行下面命o安装web.jsQ?/p>
> npm install web3
注意Q?/em> 在实际安装过E中我发现web3在安装完成后q没?nbsp;/node_modules/web3/dist/we3.min.js
文gQ这个问题在 issue#1041 中有体现Q但官方好像一直没解决。不q可以在q里下蝲 所需的文Ӟ解压后将dist
文g夹的内容拯?nbsp;/node_modules/web3
路径下?/p>
创徏 UI 在项目目录下创徏index.html
Q在q里我们创建基?UIQ功能包?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">name?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">age的输入框Q以及一个按钮,q些通过 jQuery 实现Q?/p>
<!DOCTYPE html> <html lang ="en" > <head > <meta charset ="UTF-8" > <meta name ="viewport" content ="width=device-width, initial-scale=1.0" > <meta http-equiv ="X-UA-Compatible" content ="ie=edge" > <title > Document</title > <link rel ="stylesheet" type ="text/css" href ="main.css" > <script src ="./node_modules/web3/dist/web3.min.js" > </script > </head > <body > <div class ="container" > <h1 > Info Contract</h1 > <h2 id ="info" > </h2 > <label for ="name" class ="col-lg-2 control-label" > Name</label > <input id ="name" type ="text" > <label for ="name" class ="col-lg-2 control-label" > Age</label > <input id ="age" type ="text" > <button id ="button" > Update Info</button > </div > <script src ="https://code.jquery.com/jquery-3.2.1.slim.min.js" > </script > <script > // Our future code here.. </script > </body > </html >
接下来需要编?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">main.css文g讑֮基本的样式:
body { background-color :#F0F0F0 ; padding : 2em ; font-family : 'Raleway' ,'Source Sans Pro' , 'Arial' ; } .container { width : 50% ; margin : 0 auto; } label { display :block; margin-bottom :10px ; } input { padding :10px ; width : 50% ; margin-bottom : 1em ; } button { margin : 2em 0 ; padding : 1em 4em ; display :block; } #info { padding :1em ; background-color :#fff ; margin : 1em 0 ; }
使用Web3与智能合U交?/h2> UI 创徏好之后,?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;"><script>标签中间~写web.js
的代码与合约交互。首先创?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">web3实例Qƈ与我们的试环境q接Q?/p>
<script> if (typeof web3 !== 'undefined' ) { web3 = new Web3(web3.currentProvider); } else { // set the provider you want from Web3.providers web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:7545" )); } </script>
q段代码?a style="margin: 0px; padding: 0px; color: #3b5999; text-decoration-line: none;">web3.js Github提供的样例,意思是如果web3
已经被定义,那么可以直接当作我们的 provider 使用。如果没有定义,则我们手动指?provider?/p>
q里可能会存在疑问:Z?web3 会被事先定义呢?实际上,如果你用类?nbsp;MetaMask Q一?Chrome 上的插gQ迷你型以太坊钱包)q样的YӞprovider ׃被自动植入?/p>
在上面代码的基础上,接下来设|默认的以太坊̎P
web3.eth.defaultAccount = web3.eth.accounts[0 ];
在上文中我们使用 Ganache 已经创徏?10 个̎户了Q这里我们选择W一个̎户当作默认̎戗?/p>
接下来需要让我们?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">web3知道我们的合U是什么样的,q里需要用到合U的 ABIQApplication Binary InterfaceQ?/a>?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">ABI可以使我们调用合U的函数Qƈ且从合约中获取数据?/p>在上文中我们已经?Remix 中创Z我们的合U,q时重新回到 RemixQ在 Compile ?tab 下我们点?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">Details 出现的页面中我们可以拯合约?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">ABIQ如下图所C?br style="margin: 0px; padding: 0px;" /> 其复制C码中Q?/p>
var infoContract = web3.eth.contract(PASTE ABI HERE!);
接下来{?run 的tabQ拷贝合U的地址Q将其复制到下面的代码中Q?/p>
var info = InfoContract.at('PASTE CONTRACT ADDRESS HERE' );
完成q些我们可以调用合U中的函CQ下面我们?jQuery 与我们的合约q行交互Q?/p>
info.getInfo(function (error, result ) { if (!error) { $("#info" ).html(result[0 ]+' (' +result[1 ]+' years old)' ); console .log(result); } else console .error(error); }); $("#button" ).click(function () { info.setInfo($("#name" ).val(), $("#age" ).val()); });
以上的代码就单地实现了对合约中两个函数的调用Q分别读取和昄name
?code style="margin: 1px 5px; line-height: 1.8; vertical-align: middle; display: inline-block; padding: 0px 5px !important; font-family: "Courier New", sans-serif !important; background-color: #f5f5f5 !important; border: 1px solid #cccccc !important; border-radius: 3px !important;">age变量?/p>
到此我们完成了全部的代码,完整代码可以?nbsp;InfoContract 中找到。在览器中打开index.html
试效果如下图(输入名字和年龄后hQ?/p>
本文的作者是盖盖Q他的微信公众号: chainlab
☛ 深入出区块?/a> - pȝ学习区块链,打造最好的区块链技术博客?/p> ]]>GitHub目、代码搜索、用等技?/title> http://www.aygfsteel.com/waterjava/archive/2019/12/21/434977.html狼爱上狸 狼爱上狸 Sat, 21 Dec 2019 02:14:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/21/434977.html http://www.aygfsteel.com/waterjava/comments/434977.html http://www.aygfsteel.com/waterjava/archive/2019/12/21/434977.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434977.html http://www.aygfsteel.com/waterjava/services/trackbacks/434977.html ]]> 如何?GitHub 上找C要的代码? http://www.aygfsteel.com/waterjava/archive/2019/12/20/434976.html狼爱上狸 狼爱上狸 Fri, 20 Dec 2019 08:49:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/20/434976.html http://www.aygfsteel.com/waterjava/comments/434976.html http://www.aygfsteel.com/waterjava/archive/2019/12/20/434976.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434976.html http://www.aygfsteel.com/waterjava/services/trackbacks/434976.html GitHub 在开源世界的受欢q程度自不必多言。再加上前阵子,GitHub 官方又搞了个大新闻:U有仓库改ؓ免费使用 Q这在原来可是需要真金白银的买的。可见微软收购后Q依然没有改?GitHub 的定位,甚至q更q一步?/p>
花开两朵Q各表一枝。我们今天想要聊的ƈ不是 GitHub 多么厉害Q而是?strong>怎么能把 GitHub 用得很厉?/strong>?/p>
你在 GitHub 上搜索代码时Q是怎么h作的呢?是不是就像这P直接在搜索框里输入要索的内容Q然后不断在列表里翻|自己需要的内容Q?/p>
或者是单筛选下Q在左侧加个语言的过滤项?/p>
再或者改变一下列表的排序方式
q就是「全部」了吗?
一般的pȝ索功能,都会有一个「高U搜索」的功能。需要在另外的界面里展开Q进行二ơ搜索之cȝ?GitHub 有没有类似的呢?
{案是肯定的。做Z个ؓ万千工程师提供服务的|站Q不仅要有,而且q要技术范ѝ?/p>
如果我们自己开发一个类似的应用Q会怎样实现呢?
带着思\Q咱们一h看看QGitHub 是怎样做的?/p>
q里我们假设正要学习 Spring CloudQ要找一?Spring Cloud ?Demo 参考练手?/p>
1. 明确搜烦仓库标题、仓库描q、README
GitHub 提供了便L搜烦方式Q可以限定只搜烦仓库的标题、或者描q、README{?/p>
以Spring Cloud ZQ一般一个仓库,大概是这L
其中Q红色箭头指的两个地方,分别是仓库的名称 和描q。咱们可以直接限定关键字只查特定的地斏V比如咱们只x找仓库名U包?spring cloud 的仓库,可以使用语法
in:name 关键?/strong>
如果x找描q的内容Q可以用这L方式Q?/p>
in:descripton 关键?/strong>
q里是搜烦上面目描述的内宏V?/p>
一般项目,都会有个README文gQ如果要查该文g包含特定关键词的话,我想你猜C
in:readme 关键?/strong>
2. 明确搜烦 star、fork 数大于多的
一个项?star 数的多少Q一般代表该目有受Ƣ迎E度。虽然现在也有垃N目刷 star Q但毕竟是少敎ͼ star 依然是个不错的衡量标准?/p>
stars:> 数字 关键字?/strong>
比如׃要找 star 数大?3000 的Spring Cloud 仓库Q就可以q样
stars:>3000 spring cloud
如果不加 >= 的话Q是要精找 star 数等于具体数字的Q这个一般有点困难?/p>
如果要找在指定数字区间的话,使用
stars: 10..20 关键?/strong>
fork 数同理,上面的 stars 换成fork Q其它语法相?/p>
3. 明确搜烦仓库大小?/strong>
比如你只想看个简单的 DemoQ不x特别复杂的且占用盘I间较多的,可以在搜索的时候直接限定仓库的size ?/p>
使用方式Q?/p>
size:>=5000 关键?/strong>
q里注意下,q个数字代表K, 5000代表着5M?/p>
4. 明确仓库是否q在更新l护
我们在确认是否要使用一些开源品,框架的时候,是否l箋l护是很重要的一炏V如果已l过时没人维护的东西Q踩了坑׃好办了。而在 GitHub 上找目的时候,不再需要每个都点到目里看看最q?push 的时_直接在搜索框卛_完成?/p>
元旦刚过Q比如咱们要找͘q年底依然在勤快更新的项目,可以直接指定更新时间在哪个旉前或后的
通过q样一条搜?strong>pushed:>2019-01-03 spring cloud
׃找C1?号之后,q在更新的项目?/p>
你是x指定旉之前或之后创建的仓库也是可以的,?strong>pushedҎcreated p?/p>
5. 明确搜烦仓库?LICENSE
׃l常使用开源YӞ一定都知道Q开源Y件也是分不同的「门z」不同的LICENSE 。开源不{于一切免费,不同的许可证要求也大不相同?2018q就出现?Facebook 修改 React 的许可协议导致各个公司纷U修改自q代码Q寻找替换的框架?/p>
例如׃要找协议是最为宽杄 Apache License 2 的代码,可以q样
license:apache-2.0 spring cloud
其它协议把 apache-2.0 替换一下即可,比如换成mit 之类的?/p>
6. 明确搜烦仓库的语a
比如׃找 Java 的库Q?除了像上面在左侧点击选择之外Q还可以在搜索中qo。像q样Q?/p>
language:java 关键?/strong>
7.明确搜烦某个人或l织的仓?/strong>
比如׃惛_ GitHub 上找一下某个大是不是提交了新的功能,可以指定其名称后搜索,例如׃看下 Josh Long 有没有提交新?Spring Cloud 的代码,可以q样使用
user:joshlong
l合使用一下,?Java 目qo出来Q多个查询之间「空根{分隔即可?/p>
user:joshlong language:java
找某个组l的代码话,可以q样Q?/p>
org:spring-cloud
可以列出具体org 的仓库?/p>
作者:西安北大青鸟 链接Qhttps://www.jianshu.com/p/74ae16db62af 来源Q简?br />著作权归作者所有。商业{载请联系作者获得授权,非商业{载请注明出处?/div> ]]>github新手使用指南 http://www.aygfsteel.com/waterjava/archive/2019/12/20/434975.html狼爱上狸 狼爱上狸 Fri, 20 Dec 2019 07:30:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/20/434975.html http://www.aygfsteel.com/waterjava/comments/434975.html http://www.aygfsteel.com/waterjava/archive/2019/12/20/434975.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434975.html http://www.aygfsteel.com/waterjava/services/trackbacks/434975.html https://blog.csdn.net/Hanani_Jia/article/details/77950594源博客地址
首先Q我先对 GitHub来一个简单的介绍QGitHub有一个很强大的功能就是,你在服务器上边可以创Z个库Q稍后会介绍怎么创徏Q,写代码是一件很重的dQ尤其是很多人完成一个很大的目的时候,十分的复杂Q一h一h写某个项目,大家完成的时_完成的进度都是不相同的,你写一Ҏ写一点,甚至可能你今天写的出C错误Q媄响到了我昨天写的代码Q最后怎么才能大家的代码L的汇总v来,又怎么在汇L有h的代码之后发现错误等{一pd问题。这h们就用到了GitHubq个软g。我们在GitHub服务器上有一个主仓库Q这里用来储存你的所有代码,如果不付费的话是所有h都可以看的,如果你不惌别h看到你的代码Q可以选择付费仓库。我们创ZM库之后,可以在电脑上创建分支,之后你就可以在电脑上完成自己的代码,写完之后直接同步在电脑的分支Q当你认为可以上传的自己的主仓库Ӟ可以申h斎ͼ当通过审核的时候,你代码就出现在了自己的主仓库中,q样全世界的E序员都可以查看你的代码。全世界现在已经?00万的注册用户Q甚臌有一些相当知名的开源项目也在其中公布代码。在GitHub上你可以看到很多计算机领域的_英所分n的自q代码。这是GitHub的两个主要优点,适合团队协作Q以及下载其他优U者的代码?/p>
今天Q?/span>GitHub已是Q一个拥?43万开发者的C。其中不乏Linux发明?a rel="nofollow">Torvalds
q样的顶U黑客,以及 Rails创始?a rel="nofollow">DHH
q样的年L客?/span>
· q个星球上最行的开源托服务。目前已托管 431万git目Q不仅越来越多知名开源项目迁入GitHubQ比如Ruby on Rails、jQuery、Ruby、Erlang/OTPQ近三年行的开源库往往在GitHub首发Q例如:BootStrap ?/span>Node.js ?/span>CoffeScript {?/span>alexa全球排名414的网站?img src="https://img-blog.csdn.net/20170912221840100?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvSGFuYW5pX0ppYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
https://github.com/ q是 GitHub的官方网站,在官|上可以注册属于自己的GitHub账号Q网上是全英文的Q对于英语不好的同学使用h览器,h览器可以翻译网变Z文用v来十分方ѝ?/p>
通过单的步骤之后你就会有一个属于自q GitHub账号。再单注册完成之后会需要验证你所输入的邮才能正怋用你的GitHub?/p>
在注册完成之后,完成一些简单的讄之后Q你需要创Z个属于自q?/span>
在登陆自q GitHub账号之后Q在|页右上角的加h用来创徏自己的库的按钮,之后的步骤将|页译成中文之后,按提C行创q库即可?/p>
W一个框是自׃ؓ自己的库起一个名字,W二个框是自己对库的一个简单介l?/p>
在创建完成自q库之后,下面p让自q电脑克隆一个自己所创徏的库Q方面自q脑上的代码同步到 GitHub你所创徏的库当中?/p>
Z实现Q就需要安装一个YӞ Git Bash?/p>
下面我就介绍一下这个Y件的安装Q以及简单的配置?/p>
git-scm.com 首先q入 GitHub官网Q下载适合自己电脑的版?/p>
下蝲完安装包之后q行
在安装过E中直接默认选项卛_?/p>
在对 git bashq行配置的时候大多数新手都是一头雾_下面我对配置的每一步就会有详细的记录。代码我也是从网上和学长那边要来的?/p>
我第一ơ打开软g后看到这个界面也是一脸懵逼的Q然后通过查阅了各U各L资料之后才有了一些思\?/p>
首先要在本地创徏一?/span>ssh key q个的目的就是你现在需要在你电脑上获得一个密匙,是׃qx的验证码一L东西Q获取之后,在你?/span>GitHub账号里边输入之后Q你的电脑就和你的GitHub账号联系在一起了Q这样以后就可以十分方便的通过Git bash 随时上传你的代码。下边介l一下如果获得这个钥匙,又是如何输入C的GitHub里边的呢?/span>
很多人第一ơ打开q个 GitHub的时候一脸懵|认ؓq是什么。对于一个新手来说看到这个是没有M思\Q没有Q何想法的?/span>
q一?/span> 开始是你的计算机的名字在我q里是 Hanani @后边的内Ҏ你的计算机型P很多时候有的h打开之后@后边是ؕ码,q个时候也不要在意Q因为有些电脑型h中文的,可能在显C的时候出C问题Q不影响你后期的操作?/span>
接下来,p开始获取属于你自己的密匙。在 git bash中所有功能都是通过单的一些代码来实现的。获取密匙的时候需要输?/span>
$ ssh- keygen - t rsa - C "your_email@youremail.com"
需要输入这个代码,引号内需要改成你在注?/span>GitHub的时候绑定的邮箱账号。之后会有一些简单的让你认的操作,之后让你会提C操作\径、密码等{,一般情况下q接按回R一路过可以?/span>
如果之后你出Cq个界面之后Q就说明你的密匙已经成功创徏了。现在你需要去他刚刚显C的存储位置打开它,把其中的内容复制出来?/span>
?/span>.sshq个文g夹中
之后你会看到q些内容Q有的h会在 id_rsa后边带有一个pubQ之前看|上教程需要找到带pub的文Ӟ因ؓ我在生成后没有带.pub的文Ӟ怀着忐忑的心打开id_rsa后发现这里边的密匙也是可以用的。打开id_rsa的时候需要用C本的方式打开?/span>
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDIskXqZF3SSFtACK6zoNGJabikTBC3kig6+4j4dCq1tswhA9YkuJCi0WpRmGYWBQ67dyT2or7RedFZlULLZN3nL6AWlo5V2jRXw4WQxCon2rU1p122wmiTzqYOfsykjwullWV4bYcZU4n77A4/9WwlSqZCpEbcdwV8IMkvwfJUInSWqTvmYMcKTWu8yad5DZ2v7LBWfgsL/Tfx7aEB8UjDNJ6SPw30Yijy+62YrftYGgbuwoiL9hDNGO2LfjgOkglHTBJaZe31uQLLWc5uCzd+7Dgh7RaKMmeuz2Uv7yqm/IEU9jH8cPMR9YRPIhmzg38G2s9ILn27QqW9j1hrFY1V 15229020556@163.com
q就是我所获取的密匙,打开之后很长的一D,不要惊讶Q没有问题,q就是你所需要的密匙?/span>
现在你就需要登录到你的 GitHub上边dq个密匙Q?/span>
打开?/span>GitHub的设|界面,扑ֈSSH and GPG keysq个选项之后Q在|页右上角有一个添加新的SSH keys 点击
q里?/span>title 是让你给你的密匙起一个名字,Ҏ个h喜好Q什么名字都可以Q然后把你在刚刚文g中复制的密匙Q填写在下边的大框里。保存即可?/p>之后你就可以回到你的 Git bash上边?/p>
然后输入上边的代码,来检查是否成功绑定。第一ơ绑定的时候输入上边的代码之后会提C是?/span>continueQ在输入yes后如果出CQ?/span>You've successfully authenticated, but GitHub does not provide shell access ?/span>那就说明Q已l成功连上了 GitHub。接下来q需要简单的讄一些东ѝ?/span>
输入上边的代码, name最好和GitHub上边的一Pemail是一定要是注册GitHub的那个邮地址
q两个的序可以颠倒,没有固定的顺序?/span>
下面p你的库克隆下来到本地电脑中Q方便以后进行上传代码?/span>
在库创徏完成之后 会有一个网址出现在网中?/span>
个h习惯自q文g储存?/span>d盘之中,所以你先需要将git bash定位在d盘中
?/span>git bash中输?cd /D 注意盘名字一定要是大写。如不输入这个语?不给git bash定位的话Q默认的本地文g位置是在c盘中?/p>
输入之后会出?/span>/D说明定位成功?/p>之后输入
git clone后边的网址是你创建库成功之后的网址
之后打开我所定位?/span>D?/p>
可以看到Q?/span>D盘中已经有以我的库名所创徏的文件夹了?/p>
打开q个文g夹,然后在其中创Z个Q意格式,L名称的文件?/p>
之后重新定位 git 把书 的位|,定位在你库的文g夏V?/p>
之后输入 ls语句 ls的作用是查看你目前所定位的文件夹中的文gQ现在可以看出来Q我刚刚所创徏的test文g已经出现了?/p>
然后输入 git add test.txt
之后输入然后 git commit -m "cc" 引号内的内容可以随意改动Q这个语句的意思是 l你刚刚上传的文件一个备注,方便查找记忆而已
输入之后出现以上情况Q然后在输入 git push origin master 之后会出C?/p>
界面Q在q里登陆你之前注册的 GitHub账号之后点击login?/p>
如果之后出现q种情况的话Q就是登陆失败了Q这时候你需要输入你 GitHub的̎号名U?/p>
输入之后会出现这个界面,然后再次输入你的 GitHub密码?/p>
出现cM界面Q你可以欢gQ代表你成功了?/p>
现在打开你的 GitHub|站Q找C创徏的库
发现今天的格子已l绿了,说明你已l上传了你刚刚所创徏的文件?/p>
再之后,你只需要将你的代码Q放到库的对应的文g夹中Q然后?先CDC库里面,?/span>git add 、git commit -m " " ?span style="font-family:'宋体';">最?/span>git push origin masterQ将你的代码提交可以了?/p> 同样我感觉网늉的github更适合新手白Qhttps://blog.csdn.net/hanani_jia/article/details/79855429 q是我写的一网늉github的简单操作,需要的可以看一下?/p>
]]>TypeError: Cannot read property 'address' of undefined http://www.aygfsteel.com/waterjava/archive/2019/12/18/434973.html狼爱上狸 狼爱上狸 Wed, 18 Dec 2019 11:27:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/18/434973.html http://www.aygfsteel.com/waterjava/comments/434973.html http://www.aygfsteel.com/waterjava/archive/2019/12/18/434973.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434973.html http://www.aygfsteel.com/waterjava/services/trackbacks/434973.html ^TypeError: Cannot read property 'address' of undefined
解决办法Q调整gas的值就好了?/div>
]]>
以太坊上最多存攑֤字?成本如何? http://www.aygfsteel.com/waterjava/archive/2019/12/16/434966.html狼爱上狸 狼爱上狸 Mon, 16 Dec 2019 01:28:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/16/434966.html http://www.aygfsteel.com/waterjava/comments/434966.html http://www.aygfsteel.com/waterjava/archive/2019/12/16/434966.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434966.html http://www.aygfsteel.com/waterjava/services/trackbacks/434966.html ]]>|络在线工具 http://www.aygfsteel.com/waterjava/archive/2019/12/16/434965.html狼爱上狸 狼爱上狸 Mon, 16 Dec 2019 01:16:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/16/434965.html http://www.aygfsteel.com/waterjava/comments/434965.html http://www.aygfsteel.com/waterjava/archive/2019/12/16/434965.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434965.html http://www.aygfsteel.com/waterjava/services/trackbacks/434965.html ]]>以太坊区块链的区块(BlockQ结?/title> http://www.aygfsteel.com/waterjava/archive/2019/12/16/434964.html狼爱上狸 狼爱上狸 Mon, 16 Dec 2019 00:40:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/16/434964.html http://www.aygfsteel.com/waterjava/comments/434964.html http://www.aygfsteel.com/waterjava/archive/2019/12/16/434964.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434964.html http://www.aygfsteel.com/waterjava/services/trackbacks/434964.html ]]> 以太坊·将数据写入到区块链?/title> http://www.aygfsteel.com/waterjava/archive/2019/12/13/434961.html狼爱上狸 狼爱上狸 Fri, 13 Dec 2019 10:16:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/13/434961.html http://www.aygfsteel.com/waterjava/comments/434961.html http://www.aygfsteel.com/waterjava/archive/2019/12/13/434961.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434961.html http://www.aygfsteel.com/waterjava/services/trackbacks/434961.html ]]> Visual Studio 2015下蝲 http://www.aygfsteel.com/waterjava/archive/2019/12/01/434940.html狼爱上狸 狼爱上狸 Sun, 01 Dec 2019 04:30:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/12/01/434940.html http://www.aygfsteel.com/waterjava/comments/434940.html http://www.aygfsteel.com/waterjava/archive/2019/12/01/434940.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434940.html http://www.aygfsteel.com/waterjava/services/trackbacks/434940.html 本文链接Qhttps://blog.csdn.net/yezishuang/article/details/91489354 1.Visual Studio 2015 专业版和企业版下?br /> https://www.cnblogs.com/bwlluck/p/5514424.html https://www.cnblogs.com/wgscd/p/4671374.html 2.Visual Studio 2013 https://www.cnblogs.com/abeam/p/6781006.html 3.Visual Studio 2017 https://www.cnblogs.com/jian-pan/p/6942635.html Microsoft Visual Studio Enterprise 2017 企业?br />KEYQNJVYC-BMHX2-G77MM-4XJMR-6Q8QF Microsoft Visual Studio Professional 2017 专业?br />KEYQKBJFW-NXHK6-W4WJM-CRMQB-G3CDH 4.Visual Studio 2019 https://www.cnblogs.com/zengxiangzhan/p/vs2015.html https://visualstudio.microsoft.com/zh-hans/downloads/ Q下载地址Q?br /> Visual Studio 2019 Enterprise BF8Y8-GN2QH-T84XB-QVY3B-RC4DF Visual Studio 2019 Professional NYWVH-HT4XC-R2WYW-9Y3CM-X4V3Y ]]> 使用Remix IDE快速部|你的第一个智能合U?/title> http://www.aygfsteel.com/waterjava/archive/2019/11/28/434938.html狼爱上狸 狼爱上狸 Thu, 28 Nov 2019 13:01:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/11/28/434938.html http://www.aygfsteel.com/waterjava/comments/434938.html http://www.aygfsteel.com/waterjava/archive/2019/11/28/434938.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434938.html http://www.aygfsteel.com/waterjava/services/trackbacks/434938.html ]]> genesis.json的问?/title> http://www.aygfsteel.com/waterjava/archive/2019/11/28/434937.html狼爱上狸 狼爱上狸 Thu, 28 Nov 2019 11:15:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/11/28/434937.html http://www.aygfsteel.com/waterjava/comments/434937.html http://www.aygfsteel.com/waterjava/archive/2019/11/28/434937.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434937.html http://www.aygfsteel.com/waterjava/services/trackbacks/434937.html 以前的genesis.json的文件差不多是这LQ?/div> { "config": { "chainId": 10, "homesteadBlock": 0, "eip155Block": 0, "eip158Block": 0 }, "alloc" : {}, "coinbase" : "0x0000000000000000000000000000000000000000", "difficulty" : "0x00000002", "extraData" : "", "gasLimit" : "0x2fefd8", "nonce" : "0x0000000000000042", "mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000", "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", "timestamp" : "0x00" }
用这个创世块的描q文件初始化Ӟ出现错误Q?/div>
Fatal: Failed to write genesis block: unsupported fork ordering: eip150Block not enabled, but eip155Block enabled at 0
癑ֺ吧,没有一个解军_法?/div>
后来用Puppeth命o创徏json文gQƈ做了修改Q如下所C:
{ "config" : { "chainId" : 666 , "homesteadBlock" : 0 , "eip150Block" : 0 , "eip150Hash" : "0x0000000000000000000000000000000000000000000000000000000000000000" , "eip155Block" : 0 , "eip158Block" : 0 , "byzantiumBlock" : 0 , "constantinopleBlock" : 0 , "petersburgBlock" : 0 , "istanbulBlock" : 0 , "ethash" : {} }, "nonce" : "0x0" , "timestamp" : "0x5ddf8f3e" , "extraData" : "0x0000000000000000000000000000000000000000000000000000000000000000" , "gasLimit" : "0x47b760" , "difficulty" : "0x00002" , "mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000" , "coinbase" : "0x0000000000000000000000000000000000000000" , "alloc" : { } }, "number" : "0x0" , "gasUsed" : "0x0" , "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000" } 初始化: geth --identity "MyEth" --rpc --rpcport "8545" --rpccorsdomain "*" --datadir gethdata --port "30303" --nodiscover --rpcapi "db,eth,net,personal,web3" --networkid 1999 init genesis.json 控制収ͼ
geth --identity "MyEth" --rpc --rpcport "8545" --rpccorsdomain "*" --datadir gethdata --port "30303" --nodiscover --rpcapi "db,eth,net,personal,web3" --networkid 1999 --dev.period 1 console
建立用户Q?/div>
>personal.newAccount();
挖矿Q?/div>
miner.start();
l于利挖到了h生第一桉?/div>
]]>
windows使用geth搭徏以太坊私? http://www.aygfsteel.com/waterjava/archive/2019/11/28/434935.html狼爱上狸 狼爱上狸 Thu, 28 Nov 2019 09:08:00 GMT http://www.aygfsteel.com/waterjava/archive/2019/11/28/434935.html http://www.aygfsteel.com/waterjava/comments/434935.html http://www.aygfsteel.com/waterjava/archive/2019/11/28/434935.html#Feedback 0 http://www.aygfsteel.com/waterjava/comments/commentRss/434935.html http://www.aygfsteel.com/waterjava/services/trackbacks/434935.html W一?安装geth 下蝲地址Q?a target="_blank">https://ethereum.github.io/go-ethereum/downloads/
点击安装Ndevelopment tools
W二?创徏您的帐户 在当前文件夹下创建node1文g?/h3> 创徏一个̎P也称为钱包) Devnet $ geth --datadir node1/ account new
Your new account is locked with a password. Please give a password. Do not forget this password. Passphrase: 输入你的密码 Repeat passphrase: 认你的密码 Address: {08a58f09194e403d02a1928a7bf78646cfc260b0}
W三?geth命o创徏您的Genesis文g 生成的文件是用于初始化区块链的文件。第一个块叫做创世块,是根据genesis.json文g中的参数生成的?/p>
Geth安装后目录下有很多可执行文g如puppeth或bootnode。你可以?a target="_blank">Geth github上找到完整的列表?br /> Puppeth可以创徏创世区块的json文g?br /> 开始用PuppethQ?/p>
1、win?+ r q入cmd命o行,q入到安装geth的文件夹执行 puppeth 然后序执行下面操作
2、Please specify a network name to administer (no spaces, please) > devnet
Q这里随便填写一个网l管理名U即可,如有需要后面可以通过--network重新讄Q?br /> What would you like to do? (default = stats) 1. Show network stats 2. Configure new genesis 3. Track new remote server 4. Deploy network components
> 2
Q这里选择2Q回车,配置新的创世区块Q?/p>
3、Which consensus engine to use? (default = clique) 1. Ethash - proof-of-work 2. Clique - proof-of-authorit
> 1
Q这里选择powp机制Q?/p>
4、Which accounts should be pre-funded? (advisable at least one)
> 0x1234567890123456789012345678901234567890
Q这个是讄预分配以太坊的̎P讄一个有U钥的地址可以后面试使用Q设|好后再按一ơ回车)
5、Specify your chain/network ID if you want an explicit one (default = random) > 666
Q这里就是链的chainIdQ可以随意输入也可以不输直接回R默认随机数字Q?/p>
6、What would you like to do? (default = stats)
Show network stats Manage existing genesis Track new remote server Deploy network components > 2
Q管理已拥有的创世块Q?/li> 7?1. Modify existing fork rules 2. Export genesis configuration 3. Remove genesis configuration > 2
Q选择导出创世配置Q?/p>
8、Which file to save the genesis into? (default = devnet.json) > ./genesis.json
Q导出的路径及文件名Q?/p>
OK,到这里创世json文g创徏完成?/p>
W四?geth命o初始化节?/h2> 现在我们有了q个genesis.json文gQ可以初始化创世块了Q?/p>
q入到geth安装文g夹下执行
geth --datadir node1/ init genesis.json
W五?bootnode命o操作 bootnode唯一的目的是帮助节点发现彼此Q记住,以太坊区块链是一个对{网l)
初始?bootnode bootnode -genkey boot.Key
启动bootnode服务 bootnode -nodekey boot.key -addr:30310
随意使用M您喜Ƣ的端口Q但请避免用主端口(例如HTTPQ?0303用于公共以太坊网l?/p>
W六?geth命o启动节点 geth --datadir .\node1\ --syncmode 'full' --port 30311 --rpc --rpcaddr '127.0.0.1' --rpcport 8501 --rpcapi 'personal,db,eth,net,web3,txpool,miner' --bootnodes 'enode://ca88962dbcc8eb0c7587789866f21db68cdf32ad1ea890fe0d9f8fe010f7e9afe2e6a88d5c9d418be61a10b8a31b1e7c55213bb426dab91596ae36bd7d559333@127.0.0.1:30310' --networkid 666
参数解释Q?/p>
--syncmode 'full' 有助于防止错?a target="_blank">丢弃错误的传播块?br /> --port 是node1的端?br /> --rpcapi 允许RPC调用的模?br /> --bootnodes 要连接的bootnode --networkId genesis.json文g中的chainId
W七?与您的节点进行交?/h2> 通过RPC方式
$ cd devnet
devnet$ geth attach 'http://localhost:8501'
Welcome to the Geth JavaScript console!
instance: Geth/v1.7.3-stable-4bb3c89d/linux-amd64/go1.9 coinbase: 0x87366ef81db496edd0ea2055ca605e8686eec1e6 at block: 945 (Sat, 10 Feb 2018 21:16:14 CET) modules: eth:1.0 miner:1.0 net:1.0 personal:1.0 rpc:1.0 txpool:1.0 web3:1.0
使用Geth控制?/p>
>net.version
"1515" > eth.blockNumber
1910 > eth.coinbase
"0x87366ef81db496edd0ea2055ca605e8686eec1e6" > eth.sendTransaction({'from':eth.coinbase, 'to':'0x08a58f09194e403d02a1928a7bf78646cfc260b0', 'value':web3.toWei(3, 'ether')})
"0x299a99baa1b39bdee5f02e3c660e19e744f81c2e886b5fc24aa83f92fe100d3f" >eth.getTransactionReceipt("0x299a99baa1b39bdee5f02e3c660e19e744f81c2e886b5fc24aa83f92fe100d3f")
{ blockHash: "0x212fb593980bd42fcaf3f6d1e6db2dd86d3764df8cac2d90408f481ae7830de8", blockNumber: 2079, contractAddress: null, cumulativeGasUsed: 21000, from: "0x87366ef81db496edd0ea2055ca605e8686eec1e6", gasUsed: 21000, logs: [], logsBloom: "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", status: "0x1", to: "0x08a58f09194e403d02a1928a7bf78646cfc260b0", transactionHash: "0x299a99baa1b39bdee5f02e3c660e19e744f81c2e886b5fc24aa83f92fe100d3f", transactionIndex: 0 } > exit
Q退出)
来自:https://www.haowenbo.com/articles/2019/07/24/1563963176492.html
]]>
վ֩ģ壺
״ |
ƽ |
|
Դ |
|
|
ƽ |
Դ |
|
|
|
Ϫ |
Ҧ |
˴ |
|
Ȫ |
|
|
|
ʯ |
̶ |
|
ׯ |
|
Ӻ |
|
Ƽ |
|
|
|
« |
ʹ |
Ͼ |
|
㽭ʡ |
|
˱ |
ī |
³ |
|
|