【发布时间】:2022-10-25 01:15:07
【问题描述】:
我在Goerli 上有一个已部署的合约,并希望让用户认领/铸造代币,但我不确定如何让用户支付汽油费,因为交易发生在服务器上。
这是服务器上的工作代码:
const amountInEther = "15000000.01"
const provider = ethers.getDefaultProvider("goerli", {
etherscan: apiKey,
})
const signer = new ethers.Wallet(privateKey, provider);
const DAI = new ethers.Contract(tokenContractAddress, ABI, signer)
const txObj = await DAI.mintTo(secondWallet, ethers.utils.parseEther(amountInEther))
return response.status(200).send({ txObj })
我认为这一切都需要在服务器上使用 api 密钥和 env 变量中的 privateKeys。
欢迎任何其他建议。
- 编辑 - 我不认为我解释得很好
我正在构建一个玩家积累代币的游戏。在某一时刻,玩家可以索取代币。我在想两个选择:
- 铸造代币并将其保存在钱包中,通过在合约中调用
transferTo将代币分发给玩家。 - 让玩家通过在合约中调用
mintTo直接铸造他们的收入。我想在服务器上保留声明功能,因为我想使用将发送到后端的令牌中的用户 ID 来查询数据库。我不知道如何确保在客户端中玩家会铸造他们获得的正确数量。
【问题讨论】:
标签: javascript node.js ethereum solidity