要在以太坊上构建去中心化应用,你需要知道如何发送交易、签名并广播到网络。通过交易可以转移以太币、部署自己的合约以及与其他智能合约交互。在本教程中,我们将向你演示如何放心地执行这些操作,并介绍一些有助于简化开发工作流的相关代码库和命令。
创建以太坊交易
交易是指在区块链上改变状态的操作。发送以太币、代币以及创建或使用智能合约中的函数都属于交易。如果你对以太坊中的交易还不太熟悉,可查看这些有关账户、合约以及以太坊交易类型的实用介绍。
在本文的代码库中,你还将找到一系列脚本,向你演示如何使用下面两种最常用的Javascript库与以太坊交互:web3
}
该合约有一个函数,任何人都可以使用message进行调用。它将触发一个事件,该事件回传输入的message。
合约编译
在网络上部署合约之前,我们需要先编译合约。这里包含一个简单的compile.js脚本可用于此目的:
nodecompile.js
编译合约后,在主目录中将显示一个Demo.json文件。该文件包括合约字节代码以及合约交互所必需的应用程序二进制接口(ABI)。
合约部署
下面这些部署脚本对ethers.js和web3.js均适用。运行其中的任何脚本都可以部署合约:
nodeethers/deploy.js#或nodeweb3/deploy.js
Safe在在以太坊和BSC上遇到加载问题,目前正在解决:8月23日消息,数字资产管理平台Safe( 原Gnosis Safe)发推表示,在以太坊主网和BSC上遇到加载问题,目前正在解决。[2022/8/23 12:43:04]
部署合约后,你将收到交易哈希。你可以使用区块浏览器或getTransaction()和eth.getTransactionReceipt()进行检查。矿工挖到部署交易后,脚本将输出新合约的地址。
合约交互
部署合约后,你可以与合约交互。你需要通过将合约地址传递到to参数,并传递一些数据告诉合约如何执行data参数,来执行交易。
Web3实用程序库为你提供用于签发合约的高层接口,并且为你生成data参数。
下面简单解释这些库的背后操作:data字段的第一部分是与所调用的合约方法关联的函数选择器。我们可以通过获得函数名称哈希的前4个字节及其括号内的参数类型来计算函数选择器。例如,字符串transfer(address,uint256)可以散列到4字节函数签名0xa9059cbb中。函数签名与RLP编码的函数参数连接,构成交易data字段。有关合约ABI规范和参数编码工作的更多信息,请参阅SolidityABI规范。
下面这些合约交互脚本对ethers.js和web3.js均适用。这些脚本配置为与已有的合约交互,但你可以编辑ethers/call.js的这一行或web3/call.js的这一行,然后将其替换为你部署合约的地址。
Pax Treasury在以太坊网络增发8227.7万枚PAX:金色财经报道,Whale Alert数据显示,北京时间3月2日01:17,Pax Treasury在以太坊网络增发82,277,300枚PAX,增发哈希为:0xe4904c539b0d6e7e4e699a4c2f10b0d25c42fe23a17426a158596c94a28ad3f7。[2021/3/2 18:05:15]
你现在可以运行:
nodeethers/call.js#ornodeweb3/call.js
恭喜!你已经部署了以太坊智能合约并和它交互。你现在可以继续构建一些精彩内容!
Infura为开发者提供对以太坊和IPFS网络的快速可靠访问。我们提供免费核心服务以及开发者构建去中心化应用所需的一切工具和资源。
衷心感谢_LucianBoca_对本指南的编写做出的广泛贡献。有关更多_Web3_教程。
参考资料
有关账户、合约以及以太坊交易类型的实用介绍:https://medium.com/@kctheservant/transactions-in-ethereum-e85a73068f74
在本文的代码库中:https://github.com/INFURA/demo-eth-tx
我们的技术指南,其中详细阐述了两者的相同点和不同点。:https://learnblockchain.cn/article/1851
Bitpie已在以太坊和CKB之间搭建稳定币桥 将稳定币引入CKB:据官方消息,多链钱包Bitpie已于近日在以太坊和Nervos CKB之间建立了跨链挂钩的稳定币桥。此次集成将稳定币引入CKB,它是 DeFi、支付等应用最重要的基础设施之一。通过新的桥,Bitpie 提供了稳定币资产 1:1 的跨链转移服务,将以太坊上的稳定资产转移到 Nervos CKB。
CKB 的简单用户自定义代币(sUDT)是一种简单的代币标准,具有最小的接口和逻辑,并且兼容所有锁脚本。CKB上的用户自定义代币(UDT)类似于以太坊上的 ERC20 代币。该项目的目标是丰富 Nervos生态系统上资产的多样性,同时吸引更多的稳定资产持有者加入。[2020/10/21]
以太坊合约ABI:https://learnblockchain.cn/docs/solidity/abi-spec.html
首选Web3库:http://blog.infura.io/ethereum-javascript-libraries-web3-js-vs-ethers-js-part-i/?&utm;_source=infurablog&utm;_medium=referral&utm;_campaign=tutorials&utm;_content=tutorial:_deploy_contracts
EthSigner:https://docs.ethsigner.pegasys.tech/en/stable/
USDC Treasury在以太坊链上增发近2000万枚USDC:Whale Alert数据显示,北京时间9月6日03:05,USDC Treasury在以太坊网络上增发19999996枚USDC。哈希值为:0x9b2b63b1e5ddf165f73cee0b4fc776009e705fcf2702146ecf54e07d815e8822。[2020/9/6]
Metamask:https://metamask.io/
Gnosis:https://gnosis.io/
Argent:https://www.argent.xyz/
WalletConnect:https://walletconnect.org/
在MetaMask中如何发送交易:https://docs.metamask.io/guide/sending-transactions.html#example
如何使用NodeJs创建交易、签名以及在不同账户间发送原始交易:https://medium.com/blockchain-musings/how-to-create-raw-transactions-in-ethereum-part-1-1df91abdba7c
eth_sendRawTransactionRPC调用:https://eth.wiki/json-rpc/API#eth_sendrawtransaction
动态 | USDC在以太坊网络新增发100万枚代币:据Whale Alert监测,北京时间9月19日22时09分 ,USDC向以太坊网络新增发近100万枚USDC。[2019/9/19]
eth_sendTransaction:https://eth.wiki/json-rpc/API#eth_sendtransaction
HyperledgerBesu:https://besu.hyperledger.org/en/stable/
EthSigner:https://docs.ethsigner.pegasys.tech/en/stable/
eth_sendTransaction:https://docs.ethsigner.pegasys.tech/en/stable/HowTo/Transactions/Make-Transactions/#eth_sendtransaction
一位签名者:https://docs.ethsigner.pegasys.tech/en/latest/Tutorials/Start-EthSigner/
多位签名者:https://docs.ethsigner.pegasys.tech/en/latest/Tutorials/Multifile/
进行交易:https://docs.ethsigner.pegasys.tech/en/stable/HowTo/Transactions/Make-Transactions/
Infura:https://infura.io/?&utm;_source=infurablog&utm;_medium=referral&utm;_campaign=tutorials&utm;_content=tutorial:_deploy_contracts
Node.js:https://nodejs.org/en/
Infura:https://infura.io/?&utm;_source=infurablog&utm;_medium=referral&utm;_campaign=tutorials&utm;_content=tutorial:_deploy_contracts
使用ethers.js库:https://github.com/INFURA/demo-eth-tx/blob/master/ethers/send.js
使用web3.js库:https://github.com/INFURA/demo-eth-tx/blob/master/web3/send.js
Truffle:https://learnblockchain.cn/docs/truffle/
Buidler:https://github.com/nomiclabs/buidler
Remix:https://remix.ethereum.org/
ethers.js:https://github.com/INFURA/demo-eth-tx/blob/master/ethers/deploy.js
web3.js:https://github.com/INFURA/demo-eth-tx/blob/master/web3/deploy.js
函数选择器:https://solidity.readthedocs.io/en/v0.5.3/abi-spec.html#function-selector
SolidityABI规范:https://learnblockchain.cn/docs/solidity/abi-spec.html
ethers.js:https://github.com/INFURA/demo-eth-tx/blob/master/ethers/call.js
web3.js:https://github.com/INFURA/demo-eth-tx/blob/master/web3/call.js
这一行:https://github.com/INFURA/demo-eth-tx/blob/master/ethers/call.js#L23
这一行:https://github.com/INFURA/demo-eth-tx/blob/master/web3/call.js#L25
Infura:https://infura.io/?&utm;_source=infurablog&utm;_medium=referral&utm;_campaign=tutorials&utm;_content=tutorial:_deploy_contracts
免费核心服务:https://infura.io/register?&utm;_source=infurablog&utm;_medium=referral&utm;_campaign=tutorials&utm;_content=tutorial:_deploy_contracts
本文来源于非小号媒体平台:
登链社区
现已在非小号资讯平台发布105篇作品,
非小号开放平台欢迎币圈作者入驻
入驻指南:
/apply_guide/
本文网址:
/news/9558541.html
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场
上一篇:
币安为何推出第三条链?这对BNB意味着什么?
标签:ETHHTTTPSAMPETHFIN币https://etherscan.iohttps://etherscan.iobitstamp交易所官网
Overview概述本文将会先从BitMex在中心化世界的地位出发,说明寡头市场同样会在DeFi世界出现,第二部分笔者将讨论BitMex所遇到的监管挑战是否会在DeFi世界重现.
1900/1/1 0:00:00北京时间12月20日凌晨1:30开始filecoin主网发生重大事故,336458高度之后的区块无法产生,官方紧急发布事故公告并且发布了新版本进行修复,需要所有矿工升级到最新1.4.0版本.
1900/1/1 0:00:00PoS项目领域也可以借此说法,用一条微妙而残酷的「金线」来划分项目质量,达到了的项目可以引领潮流,强者恒强;达不到的项目很有可能面临被淘汰的风险.
1900/1/1 0:00:00前言:本周关于StellarLumens的新闻比较多,3月12日,StellarLumens抛弃了他们传统的火箭船Logo换成上图所示,3月13日,Coinbase交易所宣布接受XLM存款.
1900/1/1 0:00:00币友们好!在今天的《推特大咖说》第115期中,你将看到:01MaticNetwork联合创始人兼COO刚从噩梦中醒来,因为有人打电话来求救了。。
1900/1/1 0:00:00文章系金色财经专栏作者牛七的区块链分析记供稿,发表言论仅代表其个人观点,仅供学习交流!金色盘面不会主动提供任何交易指导,亦不会收取任何费用指导交易,请读者仔细甄别,谨防上当.
1900/1/1 0:00:00