gpt4 book ai didi

javascript - 在没有元掩码的情况下自动进行solidity传输

转载 作者:行者123 更新时间:2023-12-04 14:06:34 26 4
gpt4 key购买 nike

我对 Solidity 很陌生。我对 javascript html 和 css 更有经验。但我现在正在我的前端网站上制作免费的代币提供者。用户输入他或她的地址并获得免费 token 的地方。契约(Contract)链接到我的 web3js,一切运行良好。但我不能自动转移代币,而无需批准 metamask 上的交易。我真的很想自动化这个过程,这样我就可以在我的网站上实现很多新功能。
当我在 remix 中与我的合约交互时,它运行良好,但在 java 中它必须做 metamask 的事情。
这是我在 javascript 中的函数代码:

function Coingiver()
{
const web3 = new Web3(window.ethereum);
var slotContract = new web3.eth.Contract(abi, address);

const addressreceive = document.getElementById("address").value;
const addressend = "0x582077e61D52bB1Ae6FB9EcEDa1eb39153E9A269";

window.ethereum.enable();

slotContract.methods.transferFrom(addressend, addressreceive, 1).send({from : addressend},function(err, res)
{
if(err)
{
console.log("error", err)
return
}
console.log("Hash of the transaction: ", res)
});

checkBalance();
}
那么我如何使这个过程自动化,这样我就不必每次都批准交易了?
感谢您帮助我(初学者)!

最佳答案

为了让用户发送交易以获取您的硬币,他们必须为交易支付汽油费。 metamask 在发送交易之前总是先询问用户的一个原因是为了防止网站通过重复将他们的 ETH 作为气体来消耗所有用户的 ETH。
如果您真的想免费为用户执行此操作,您可以在服务器上使用 node.js 或 python,并在用户填写表格时让它签名并发送硬币。
请注意,收集空投存在大量欺诈行为,如果您只是发送到任何地址,诈骗者将生成无穷无尽的地址来获取硬币,并且您还将支付gas费用。

关于javascript - 在没有元掩码的情况下自动进行solidity传输,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68243658/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com