web3.js配置通信服务提供器官方提供的方法
web3.providers
一般的使用方法
var web3 = new Web3(new Web3.providers.HttpProvider("http:xxx"));
比如MetaMask这种钱包是可以配置的,比如测试网这种,用户会填RPC URL,链ID等等
但无论如何都不能直接获取用户配置的PRC,但可以拿到链ID
async function getChainId(){
const chainId = await ethereum.request({ method: 'eth_chainId' });
//!链id不是马上拿到的,如果通过链id来判断是不是主网的方式,请注意异步
}
通过钱包设置的RPC配置web3
var Web3 = require('web3');
var web3= new Web3(window.web3.currentProvider);//以前的使用方法,现在依然可用不久的将来将会废弃
var web3 = new Web3(window.ethereum);//现在官方的推荐使用方法