Logo
新用户订阅 RPC,首月享 6.5 折优惠查看优惠
RPC Assistant

Mantle 端点:链设置、RPC URL 和调试

摘要

了解如何使用正确的链 ID、RPC 端点和浏览器设置连接到 Mantle 主网。本页涵盖公共和专用 RPC 选项、常见的 JSON-RPC 方法以及生产 dApp 的故障排除步骤。

Mantle 端点概览

Mantle 是一个以太坊 Layer 2 网络,采用乐观汇总架构和模块化数据可用性层。如果您正在 Mantle 上构建 dApp、索引器或后端服务,首先需要的是一个可靠的 RPC 端点来读取链状态和提交交易。

以下是 Mantle 主网的基本网络详情:

设置
链 ID5000
网络名称Mantle
原生货币MNT(18 位小数)
区块浏览器https://mantlescan.xyz
公共 RPC URLhttps://mantle.api.onfinality.io/public

此表是配置钱包、dApp 或后端服务所需的最低要求。对于生产工作负载,您可能需要专用 RPC 端点而不是共享的公共端点。我们将在下一节讨论这个决策。

快速建议:公共端点还是专用端点?

在将 RPC URL 复制到代码之前,请决定哪种类型的端点适合您的用例。正确的选择取决于您的流量、对速率限制的容忍度以及是否需要归档数据。

  • 原型开发或低流量测试:公共端点如 https://mantle.api.onfinality.io/public 就足够了。它允许您验证合约调用并发送少量交易,无需任何设置。
  • 生产 dApp 或后端:使用专用 RPC 端点。公共端点是共享的,在高负载下可能会被限流。专用节点提供一致的吞吐量,避免嘈杂邻居问题。
  • 索引或分析:如果您需要历史状态或希望避免 eth_getLogs 限制,请考虑归档节点或支持归档数据的提供商。

如果您不确定,请先使用公共端点进行开发,然后在启动前迁移到专用端点。OnFinality 为 Mantle 提供公共 RPC 访问专用节点,因此您可以扩展而无需更改代码。

Mantle RPC 端点选项

有几种方式可以访问 Mantle RPC 端点。每个选项在成本、可靠性和控制方面都有权衡。

公共端点

公共端点免费且易于使用。它们适用于开发、小型项目和偶尔查询。但是,它们被许多用户共享,因此在高峰时段可能会变慢或受到速率限制。

OnFinality 在 https://mantle.api.onfinality.io/public 提供公共 Mantle 端点。这是测试的良好起点。

专用节点

专用节点为您提供具有专用资源的私有 RPC 端点。您不会与其他用户共享节点,这意味着更一致的性能和明确的速率限制。

专用节点非常适合生产 dApp、高流量服务以及需要每秒大量请求的应用程序。OnFinality 的专用节点服务允许您部署具有自己端点的 Mantle 节点,您可以根据需要选择归档节点或全节点。

第三方提供商

许多 RPC 提供商提供 Mantle 端点。比较提供商时,请查看以下内容:

  • 吞吐量限制:您考虑的计划的每秒最大请求数 (RPS) 是多少?
  • 归档数据:提供商是否提供归档节点?如果提供,额外费用是多少?
  • WebSocket 支持:您是否需要实时更新?确保提供商支持 WSS。
  • 地理分布:节点是否位于用户附近以减少延迟?

OnFinality 是众多选项之一。我们建议根据您的具体工作负载评估提供商,而不仅仅是价格。

钱包和 dApp 的链设置

当您将 Mantle 添加到像 MetaMask 这样的钱包或配置 dApp 时,您需要正确的链设置。以下是一个可用的 JSON 片段:

{
  "chainId": "0x1388",
  "chainName": "Mantle",
  "nativeCurrency": {
    "name": "Mantle",
    "symbol": "MNT",
    "decimals": 18
  },
  "rpcUrls": ["https://mantle.api.onfinality.io/public"],
  "blockExplorerUrls": ["https://mantlescan.xyz"]
}

请注意,链 ID 十进制为 5000,十六进制为 0x1388。某些工具需要十六进制格式,因此了解两者都很有用。

向 Mantle 发起 JSON-RPC 调用

一旦您有了端点,您可以使用标准的以太坊 JSON-RPC 方法与 Mantle 交互。以下是一个基本的 curl 示例,用于获取最新区块号:

curl -X POST https://mantle.api.onfinality.io/public \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'

您也可以在 dApp 中使用像 ethers.jsviem 这样的库。以下是使用 ethers.js 的示例:

import { ethers } from "ethers";

const provider = new ethers.JsonRpcProvider("https://mantle.api.onfinality.io/public");

async function getBlockNumber() {
  const blockNumber = await provider.getBlockNumber();
  console.log("当前区块号:", blockNumber);
}

getBlockNumber();

对于实时更新,您可以使用 WebSocket。OnFinality 的公共端点支持 WSS,但对于生产环境,您应该使用具有稳定 WSS URL 的专用端点。以下是一个简单的 WebSocket 订阅示例:

const WebSocket = require('ws');
const ws = new WebSocket('wss://mantle.api.onfinality.io/public');

ws.on('open', function open() {
  ws.send(JSON.stringify({
    jsonrpc: '2.0',
    method: 'eth_subscribe',
    params: ['newHeads'],
    id: 1
  }));
});

ws.on('message', function incoming(data) {
  console.log(data);
});

常见故障模式及解决方法

即使端点正确,您也可能遇到问题。以下是常见问题及其解决方案。

速率限制

如果您看到类似 429 Too Many Requestsrate limit exceeded 的错误,说明您已达到公共端点的限制。解决方法是降低请求频率或升级到具有更高限制的专用节点。

连接超时

如果您的请求超时,端点可能过载或您的网络连接不稳定。检查您的互联网连接并重试。如果问题仍然存在,请考虑使用具有服务级别协议的专用节点。

链 ID 错误

如果您发送交易失败,请仔细检查您是否使用了正确的链 ID(5000)。使用错误的链 ID 可能导致交易被拒绝。

缺少归档数据

如果您需要历史数据而您的节点不是归档节点,则在查询旧状态时可能会收到错误。在这种情况下,您需要归档节点。OnFinality 为 Mantle 提供归档节点;有关详细信息,请参阅我们的网络页面

调试您的 Mantle 连接

当出现问题时,系统化的方法会有所帮助。以下是调试路径:

  1. 检查端点:验证 URL 是否正确且可访问。使用 curl 进行简单的 eth_chainId 调用。
  2. 检查链 ID:确保您的客户端使用 5000
  3. 检查方法:某些方法可能在公共端点上不受支持。例如,eth_getLogs 的宽区块范围可能受到限制。
  4. 检查负载:确保您的 JSON-RPC 请求格式正确。
  5. 检查响应:查看错误消息。它通常会准确告诉您问题所在。

以下是检查链 ID 的 curl 命令:

curl -X POST https://mantle.api.onfinality.io/public \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'

如果您收到带有 result: "0x1388" 的响应,则您的端点工作正常。

监控端点健康

对于生产应用程序,您应该监控 RPC 端点以尽早发现问题。您可以设置一个简单的健康检查,每几秒调用一次 eth_blockNumber,并在请求失败或区块号不前进时发出警报。

以下是使用 Node.js 的简单监控脚本:

const { ethers } = require("ethers");

const provider = new ethers.JsonRpcProvider("https://mantle.api.onfinality.io/public");

async function checkHealth() {
  try {
    const blockNumber = await provider.getBlockNumber();
    console.log(`健康。区块: ${blockNumber}`);
  } catch (error) {
    console.error("健康检查失败:", error);
  }
}

setInterval(checkHealth, 30000);

对于更高级的监控,您可以跟踪响应时间、错误率和区块高度滞后。如果您使用专用节点,您还可以监控节点资源使用情况。

关键要点

  • Mantle 主网使用链 ID 5000 和原生代币 MNT。
  • 公共 RPC 端点 https://mantle.api.onfinality.io/public 适用于开发和测试。
  • 对于生产工作负载,请考虑使用专用 RPC 端点以避免速率限制并确保一致的性能。
  • 始终验证链 ID 并使用正确的 JSON-RPC 方法。
  • 监控端点健康,以便在问题影响用户之前发现它们。

常见问题解答

Mantle RPC URL 是什么?

Mantle 主网的公共 RPC URL 是 https://mantle.api.onfinality.io/public。对于生产用途,您可能需要来自像 OnFinality 这样的提供商的专用端点。

Mantle 链 ID 是什么?

Mantle 链 ID 是 5000(十进制)或 0x1388(十六进制)。

如何将 Mantle 添加到 MetaMask?

您可以使用本文提供的链设置将 Mantle 添加到 MetaMask。或者,您可以使用支持 Mantle 的网络切换工具。

为什么我的 Mantle RPC 请求失败?

常见原因包括端点 URL 错误、链 ID 错误、速率限制或网络问题。检查错误消息并参考上面的调试部分。

OnFinality 是否提供专用的 Mantle 节点?

是的,OnFinality 为 Mantle 提供专用节点。您可以在我们的专用节点页面Mantle 网络页面上找到更多信息。

有关定价和支持网络的更多详细信息,请参阅我们的 RPC 定价页面支持的网络列表

RPC 知识库

相关 RPC 内容

网络 RPCBase

Base RPC 端点:链设置、提供商和调试

获取 Base 主网 RPC 端点、链 ID 和网络设置,用于钱包和 dApp。了解如何在公共、免费和生产级 RPC 提供商之间选择,以及如何调试常见连接问题。...

RPC 提供商选择

如何为NFT项目选择RPC提供商?

NFT应用——铸造平台、市场及游戏工具——依赖快速、可靠的RPC端点来提交交易和获取元数据。选择不当的提供商可能导致铸造失败、加载缓慢及用户体验差。本指南涵盖评估用于NFT工作负载的RPC提供商的关键标准,包括延迟、速率限制、归档数据支持和故障转移能力。我们还以Solana网络为例,演示实际设置步骤...

RPC 提供商选择Scroll

Scroll RPC 提供商:如何为你的 dApp 选择基础设施

选择 Scroll RPC 提供商意味着在延迟、可靠性和数据访问之间取得平衡。本指南涵盖 Scroll 的链设置、生产环境评估标准以及入门代码示例。无论你需要公共端点还是专用节点,了解集成前应检查的要点。...

RPC 提供商选择

共享与专用 Solana RPC 节点的成本差异是什么?

共享 Solana RPC 节点按使用量计费——根据请求量、计算单元或数据传输——对于开发和低至中等流量来说成本效益高。专用 Solana RPC 节点有较高的固定月费,但提供可预测的性能、资源隔离和无速率限制争用。正确的选择取决于你的应用程序的流量模式、延迟要求和预算。...

网络 RPCTON

RPC TON Network: Endpoints, Provider Comparison, and Troubleshooting

Looking for an RPC TON network endpoint? This guide compares TON RPC providers, provides step-by-step setup instructions, and highlights common pitfal...

RPC 提供商选择Starknet

Starknet RPC:端点、提供商和最佳实践

Starknet 是基于以太坊的 ZK-rollup,使用 STARK 证明实现可扩展性。要与 Starknet 交互,您需要一个 RPC 端点。本指南涵盖公共和私有 Starknet RPC 端点、如何选择提供商以及针对开发者的常见故障排除技巧。...

永远不用担心基础设施

OnFinality 消除了 DevOps 的繁重工作,让您能够更聪明、更快地构建。

开始