NodeJS 如何利用Web3在BSC主网中发送BNB

llew8vvj  于 2023-06-29  发布在  Node.js
关注(0)|答案(1)|浏览(159)

我将在BSC主网上使用web3发送BNB。BSC主网如下。

MAINNET=https://bsc-dataseed1.binance.org:443
const web3 = new Web3(process.env.MAINNET);
const BNBcontract = await new web3.eth.Contract(BNBabi, process.env.BNB_ADDRESS);
const BNBdecimals = await BNBcontract.methods.decimals().call();

但它发生错误时,我运行代码
错误:返回的值无效,是否运行完了气体?如果您没有为从中检索数据的合约使用正确的ABI,从不存在的区块号请求数据,或查询未完全同步的节点,您也可能会看到此错误。
我的想法是错的?我不能在BSC主网上发送BNB?什么是BNB令牌地址?我在Etherscan.io中找到了BNB令牌地址。0xB8c77482e45F1F44dE1745F52C74426C631bDD52这是正确的吗?我应该在www.example.com上使用合同ABIetherscan.io?

e5nqia27

e5nqia271#

const signedTx = await  web3.eth.accounts.signTransaction({
                to: account.address,
                value: (process.env.BNB_SEND_AMOUNT* 10**decimals).toString(),
                gas: 2000000,
                common: {
                  customChain: {
                    name: 'custom-chain',
                    chainId: 56,
                    networkId: 56
                  }
                }
            }, process.env.MAIN_WALLET_PRIVATE);
        
            // BNB send
            let BNBtx = await web3.eth.sendSignedTransaction(signedTx.rawTransaction);

            // BNB hash
            console.log("BNB Hash: ", BNBtx.transactionHash)

为了在BSC上发送BNB,我们不需要BNB的ABI文件。

相关问题