前两天跟着视频写了个比较简单的 DApp,感觉上还是蛮有意思的,使用上也有点百花齐放的味道。
应用的功能很简单,输入一个数字,点击一个按钮,会往该合约转入输入数字的 ETH,多次转入可累加,也可以点击另一个按钮全部取回,类似于一个储蓄罐。
写合约需要用到 Solidity,部署的时候需要借助节点服务商部署,客户端通过ethers.js
调用MetaMask
钱包的 API,然后MetaMask
再去调用以太坊。
整个过程里面有几个东西比较有意思,第一个是hardhat
配置的网络地址,这里的地址是用的 Alchemy 一个 Web3开发者平台,通过检索后了解到这个平台其实就是一个节点,由这个节点去代替本地去做上链的的这个过程(本地上链没试过,我想首先应该需要本地可能需要做一个全节点同步,会需要很多空间),并且会提供一些分析服务,比如这个合约的调用记录,调用次数,这种节点应该就是我之前猜想的头部节点。
还有一个有意思的是区块链浏览器
,听到这个名字你可能会猜测是一个类似于Tor
这种具有特殊功能的浏览器,搜到一个 Etherscan,进去之后才知道就是一个本地同步了全节点然后存储到数据库中可以检索的一个普通网站。