Node.js @ethereumjs/tx: infura調用需gasfee的ERC721合約功能
1.0 Install web3
web3==5.31.1
2.0 call sign_transaction()
infura_url = "infura接口"
paytoken_address = "ERC20合約地址"
contract_abi_erc20 = "ERC20合約abi"
admin_address = "地址"
admin_private_key = "私匙"
admin_nonce = "nonce"
buyer_address = "地址"
buyer_amount_return = "金額"
web3 = Web3(Web3.HTTPProvider(infura_url))
contract = web3.eth.contract(paytoken_address, abi=contract_abi_erc20)
transaction = contract.functions.transferFrom(
admin_address, web3.toChecksumAddress(buyer_address), web3.toWei(buyer_amount_return, 'ether')).buildTransaction(
{'from': admin_address, 'nonce': admin_nonce})
signed_tx = web3.eth.account.sign_transaction(transaction, admin_private_key)
tx_hash = web3.eth.send_raw_transaction(signed_tx.rawTransaction)
tx_receipt = web3.eth.wait_for_transaction_receipt(tx_hash)
調用infura接口,必需使用sign_transaction。
浙公网安备 33010602011771号