Web3js
使用私鑰發送簽名交易
我在 Fantom 測試網路上部署了測試令牌(LQRD 的副本)。
我使用 A 私鑰將簽名交易從 A 賬戶發送到 B 賬戶。
交易成功。
但是令牌沒有從 A 轉移到 B。
const nonce = web3.eth.getTransactionCount('A address','pending'); const Contract = new web3.eth.Contract(Abi, Addresse); const encodedABI = Contract.methods.transfer('B address', 100000).encodeABI(); var rawTransaction = {"to": 'B addresss', "gas": 100000, "nonce": nonce ,"data": encodedABI}; const signedTx = await web3.eth.accounts.signTransaction(rawTransaction, 'Private key'); console.log(signedTx.rawTransaction); web3.eth.sendSignedTransaction(signedTx.rawTransaction, function(error, hash) { if(!error) console.log(hash); else console.log(error); });
如果您刪除了事務雜湊,那就太好了。
我發現您的對
rawTransaction
像有問題的是,您正在指定一個to
鍵。這不是必需的,因為您 encodeABI 會將呼叫定向到正確的地址,除此之外,to 應該指向令牌地址而不是
B address
.您的轉接電話可能被定向到
B address
而不是令牌地址。