You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查询Web3 RPC客户端当前对接的区块链网络(如Ethereum Mainnet等)

查询Web3 RPC客户端对接的区块链网络

不管你用Web3类库还是直接调用RPC端点,核心都是通过**链ID(Chain ID)**识别当前对接的网络——不同主流公链的Chain ID是唯一的。下面是几种常用查询方式:

1. 使用Web3.js库

初始化Web3实例后,调用net.getId()或eth.getChainId()方法:

const Web3 = require('web3');
const web3 = new Web3('你的RPC端点URL');

// 方式1:获取链ID
web3.net.getId().then(chainId => {
  console.log('当前链ID:', chainId);
  // 对应网络映射:1=以太坊主网,137=Polygon主网,56=BSC主网等
});

// 方式2:另一种获取链ID的途径
web3.eth.getChainId().then(chainId => {
  console.log('当前链ID:', chainId);
});

2. 使用Ethers.js库

通过Provider实例调用getNetwork(),直接返回网络名称和链ID:

const { ethers } = require('ethers');
const provider = new ethers.providers.JsonRpcProvider('你的RPC端点URL');

provider.getNetwork().then(network => {
  console.log('当前网络名称:', network.name);
  console.log('当前链ID:', network.chainId);
  // 示例输出:network.name = 'homestead'(以太坊主网)、'matic'(Polygon主网)等
});

3. 直接调用RPC端点(无需类库)

用curl或HTTP工具发送eth_chainId请求,返回十六进制链ID,转十进制即可对应网络:

curl -X POST \
  -H "Content-Type: application/json" \
  --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}' \
  你的RPC端点URL

返回示例:{"jsonrpc":"2.0","id":1,"result":"0x1"},其中0x1转十进制为1,对应以太坊主网。

常见主流网络链ID映射:

  • 以太坊主网:1
  • Polygon主网:137
  • BSC主网:56
  • 以太坊Goerli测试网:5
  • Polygon Mumbai测试网:80001

内容的提问来源于stack exchange,提问作者M. Akar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 06:25:27