欢迎订阅专栏:10分钟智能合约:进阶实战
转账类型
以太坊生态中有2种最常见的转账方式
- ETH->非合约交易
- Token(ERC20)->合约交易
ETH转账
接收ETH
receive与fallback执行顺序
合约作为ETH接收方条件
- 需要有receive或fallback函数
- 必须标记为payable
发送ETH
- send
- transfer
- call
| gas限制 | 失败回滚 | 推荐使用 | |
|---|---|---|---|
| send | 2300 | 否 | 不推荐 |
| transfer | 2300 | 是 | 简单场景 |
| call | 无限制 | 否 | 复杂场景 |
Token转账
- ERC721等资产对应的是合约中状态变量
- 调用safeTransferFrom时,执行onERC721Received回调