我向区块链部署了一个智能契约,但功能不多。
我想知道如何与代码交互,例如>合同有2种功能--存款和取款。现在,我不用手动保存和使用100次了,我如何编写自动调用这些函数的代码呢?
假设代码创建了新闻电子钱包,将Ethereum发送到那个钱包,然后,从那个钱包中存入资金并提取它,然后创建新的钱包并重复。
发布于 2021-01-13 10:27:18
智能契约中的代码不能从区块链中自动调用,必须从外部调用。
这意味着您需要编写一个脚本或一些服务,这些脚本或服务将运行并与您的智能契约交互。一旦您拥有了此服务,您可以根据需要运行它多少次,或者您可以安排它以特定的时间间隔运行。
一个很好的起点是阅读Web3.js,这是一个众所周知的库,可以与Ethereum块链集成。
发布于 2021-08-13 12:56:51
找到了这个关于如何自动化智能契约的教程:
“假设你已经部署了一份智能合同。你希望盖拉托在某一时间调用智能合同。你所需要做的就是部署一个解析器合同,它将告诉盖拉托。”
“嘿,每小时都在这里打电话给这个功能”
下面是函数buy()的一个例子,我希望Gelato调用这个函数。此函数通过Uniswap V2购买ETH:
uint256 public lastBought;
function buy(
uint256 amountIn,
uint256 amountOutMin,
address[] calldata path,
address to,
uint256 deadline
) external {
require(block.timestamp >= lastBought + 1 hours);
IERC20(path[0]).approve(address(router), amountIn);
router.swapExactTokensForETH(
amountIn,
amountOutMin,
path,
to,
deadline
);
lastBought = block.timestamp;
}在本教程中有更多的内容。希望能帮上忙!
https://ethereum.stackexchange.com/questions/92236
复制相似问题