Für eine Webanwendung habe ich die Transaktions-ID einer Aktivität gespeichert. Wenn der Benutzer die Transaktion mit einem höheren Gaspreis in Metamask wiederholt (falls die Transaktion zu lange dauert, bietet Metamask diese Option), gibt es eine Möglichkeit, die aktuelle Transaktions-ID, die ich gespeichert habe, durch eine neue zu ersetzen. Wie kann diese Wiederholung erkannt werden. Gibt es dafür eine web3-Methode?
Wenn Sie möchten, dass dieselbe Transaktion nur mit einem höheren Gaspreis durchgeführt wird, müssen Sie die Transaktions-ID nicht ersetzen, da sich diese nicht ändert.
Der Aufruf einer Funktion in Ihrem Frontend mit web3.js
Ihnen würde diesen Codeabschnitt verwenden
function functionYouWantToCall() {
web3.eth.getAccounts(function(error, result) {
web3.eth.sendTransaction(
{from:web3.eth.accounts[0],
to: YourContractAddress,
value: "0",
data: "0xTheHashOfTheFuctionYouWantToCall"
}, function(err, result) {
if (!err)
console.log(error);
});
});
}
Um die Informationen zu finden, die Sie in das Datenfeld eingeben sollten, gehen Sie zu Remix und wählen Sie dann auf der Registerkarte "Ausführen" Details aus, scrollen Sie nach unten zu Funktions-Hashes und wählen Sie Einfügen in den Hash der Funktion, die Sie aufrufen möchten, mit davor 0x
. Achten Sie auch darauf, Ihre eigene Vertragsadresse in das Feld Vertragsadresse einzugeben
Akash
JAG
Akash
JAG