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

关于 Polygon PoS 端点,我应该了解哪些内容?

摘要

Polygon PoS 端点是你的应用用来读取链状态并向 Polygon 权益证明网络提交交易的 HTTP 和 WebSocket URL。主网链 ID 是 137,原生 Gas 代币是 POL,一个可用的端点需要支持你的工作负载实际调用的 JSON-RPC 方法。本页涵盖链设置、端点选项、请求示例以及生产环境中出现的故障模式。

用它来判断共享公共端点是否足以应对你的流量,或者你是否需要专用的 Polygon 节点。OnFinality 通过其 API 服务和专用节点基础设施提供 Polygon PoS RPC,因此你可以从共享端点开始,并随着请求量或索引需求的增长迁移到隔离容量。

Polygon PoS 是最繁忙的 EVM 链之一,大多数团队通过 JSON-RPC 端点访问它,而不是运行自己的节点。棘手的地方不是找到一个 URL——而是选择一个匹配你工作负载的 URL,将其正确接入钱包和后端服务,并知道当调用开始失败时该检查什么。

本页面向需要可用的 Polygon PoS 端点以及选择共享公共 URL 和专用容量之间所需背景的开发者与基础设施采购者。如果你想先了解网络概况,请参阅 Polygon RPC 页面

链设置一览

在连接任何东西之前,请确认以下值。Polygon 已将其原生 Gas 代币从 MATIC 迁移到 POL,因此仍引用 MATIC 的旧教程可能会在钱包配置和 Gas 估算中造成混淆。

设置Polygon PoS 主网Polygon Amoy 测试网
链 ID13780002
链名称Polygon MainnetAmoy
原生代币POL(18 位小数)POL(18 位小数)
区块浏览器https://polygonscan.comhttps://amoy.polygonscan.com
传输HTTP、WebSocketHTTP、WebSocket

主网的公共 OnFinality 端点位于 https://polygon.api.onfinality.io/public,Amoy 测试网端点是 https://polygon-amoy.api.onfinality.io/public。公共端点是共享的,因此请将其视为开发和低流量读取的起点,而不是高流量生产应用的最终归宿。

共享端点何时足够——何时不够

这是大多数团队会搞错的决策。当你的调用量适中、请求主要是读取,并且偶尔的延迟变化不会破坏用户体验时,共享公共端点是可以的。当你需要可预测的吞吐量、隔离容量或长时间运行的订阅时,它就会成为负担。

使用这个快速匹配检查:

你的情况共享公共端点专用 Polygon 节点
原型设计、脚本、小型 dApp通常可以过度
有稳定用户流量的钱包或 dApp负载下有风险推荐
进行批量 eth_getLogs 的索引器或后端经常被限流推荐
实时订阅(eth_subscribe容易争用推荐
归档或历史状态查询有限推荐
合规或数据隔离需求不适合推荐

如果你不确定自己属于哪种情况,请从共享端点开始,测量你的请求模式,一旦你能描述峰值负载,就迁移到专用节点。如需更广泛的框架,RPC 提供商选择指南介绍了评估标准。

从代码连接

确认端点是否可用的最简单方法是原始 JSON-RPC 调用。这会检查连接性并返回当前区块号:

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

成功的响应看起来像 {"jsonrpc":"2.0","id":1,"result":"0x..."}。如果你遇到超时或非 200 状态,问题出在端点或你的网络路径——而不是你的应用逻辑。

在 JavaScript 中,大多数团队使用 viem 或 ethers。使用 viem:

import { createPublicClient, http } from 'viem';
import { polygon } from 'viem/chains';

const client = createPublicClient({
  chain: polygon,
  transport: http('https://polygon.api.onfinality.io/public'),
});

const block = await client.getBlockNumber();
console.log('Polygon PoS head:', block);

对于实时工作,Polygon PoS 支持 WebSocket 订阅。通过 wss 的最小 eth_subscribe 如下所示:

import WebSocket from 'ws';

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

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

ws.on('message', (data) => {
  console.log('New head:', data.toString());
});

WebSocket 的可用性取决于你使用的端点和计划。如果订阅是你设计的一部分,请在提交之前确认传输支持,因为并非每个共享端点都暴露 wss

将 Polygon PoS 添加到钱包

钱包和网络配置是“错误链”错误的常见来源。以下字段与设置表中的值匹配:

{
  "chainId": "0x89",
  "chainName": "Polygon Mainnet",
  "nativeCurrency": { "name": "POL", "symbol": "POL", "decimals": 18 },
  "rpcUrls": ["https://polygon.api.onfinality.io/public"],
  "blockExplorerUrls": ["https://polygonscan.com"]
}

请注意,0x89 是十进制 137 的十六进制形式。混合这两种格式是 wallet_addEthereumChain 调用失败的最常见原因之一。

方法、限制以及容易出问题的地方

Polygon PoS 兼容 EVM,因此适用标准方法集:eth_calleth_getBalanceeth_getLogseth_getTransactionReceipteth_estimateGaseth_sendRawTransaction 等等。你最可能遇到的故障并不罕见:

  • 共享端点上的速率限制。 突发的 eth_getLogs 扫描或轮询循环可能触发共享限制。尽可能批处理和缓存。
  • eth_getLogs 范围限制。 提供商限制每次查询的区块范围。如果你的索引器在一次调用中扫描大范围,请将其拆分为块。
  • 重组处理。 Polygon PoS 可能发生重组,因此确认数很重要。对于涉及价值的逻辑,不要将单个收据视为最终结果。
  • 归档缺口。 针对旧区块的历史 eth_call 需要归档数据。共享端点可能不提供深层历史。
  • WebSocket 断开。 长期订阅需要带有退避和重新订阅步骤的重连逻辑。

失败调用的调试路径

当调用失败时,按以下顺序处理,而不是猜测:

  1. 用 curl 重现。 如果原始请求失败,问题出在端点或网络,而不是你的 SDK。
  2. 检查链 ID。 调用 eth_chainId 并确认在主网上得到 0x89
  3. 隔离方法。 测试失败的具体方法。eth_blockNumber 正常工作并不能证明 eth_getLogs 会成功。
  4. 检查错误体。 JSON-RPC 错误携带代码和消息——速率限制、方法未找到和范围错误看起来不同。
  5. 比较端点。 如果第二个端点成功,则第一个是问题所在。
  6. 检查时间。 与你自己的部署或 cron 作业相关的峰值通常指向请求量,而不是提供商。

在共享容量和专用容量之间选择

如果你的调试路径总是落在速率限制、范围上限或订阅断开上,那么修复方法是容量,而不是代码。OnFinality 通过共享 RPC API 服务专用节点部署提供 Polygon PoS,为你的工作负载提供隔离资源。专用节点通常是索引器、交易所和具有稳定生产流量的应用的选择。

在比较提供商时,无论供应商是谁,都要关注相同的维度:

维度需要确认的内容
传输如果需要订阅,是否支持 HTTP 和 WebSocket
归档访问是否提供历史状态查询
eth_getLogs 限制每次查询的最大区块范围
吞吐量你的计划允许的每秒请求数
故障转移当一个端点降级时如何切换
定价模式按请求 vs 专用容量

共享和专用选项的定价在 RPC 定价页面上,你可以在支持的 RPC 网络列表中浏览其他链。

关键要点

  • Polygon PoS 主网使用链 ID 137(0x89)、原生代币 POL 和浏览器 polygonscan.com。
  • OnFinality 公共端点:主网为 https://polygon.api.onfinality.io/public,Amoy 测试网为 https://polygon-amoy.api.onfinality.io/public
  • 共享端点适合开发和轻量读取;专用节点适合生产流量、索引器和订阅。
  • 大多数故障可追溯到速率限制、eth_getLogs 范围上限、重组处理或 WebSocket 断开——而不是链本身。
  • 在为生产工作负载提交端点之前,始终确认传输支持和归档访问。

常见问题

Polygon PoS 的链 ID 是什么? 主网是 137,十六进制写作 0x89。Amoy 测试网是 80002。

Polygon PoS 的原生代币是什么? POL,18 位小数。它取代 MATIC 成为网络的 Gas 和质押代币。

我可以在生产环境中使用公共端点吗? 可以,但共享端点会受到争用影响。对于稳定流量、订阅或批量日志查询,专用节点为你提供隔离容量。

Polygon PoS 支持 WebSocket 订阅吗? 是的,网络支持 eth_subscribe,但你使用的端点必须暴露 wss。确认你选择的计划的传输支持。

为什么 eth_getLogs 在大范围上失败? 提供商限制每次查询的区块范围以保护共享基础设施。将大扫描拆分为更小的块并分页。

如何在不中断的情况下切换端点? 运行至少两个端点,并在健康检查失败时故障转移。一个定期调用 eth_blockNumber 的简单探测就足以检测到降级的端点。

RPC 知识库

相关 RPC 内容

网络 RPCScroll

关于 Scroll RPC 端点,我需要了解什么?

# 关于 Scroll RPC 端点,我需要了解什么? Scroll RPC 端点至关重要,因为 Web3 应用程序依赖于稳定的端点访问来实现读取、交易、仪表盘和后端工作流。正确的设置应匹配您的工作负载,支持您所需的网络和测试网,使限制可见,并在共享 RPC 不再足够时为您提供扩展路径。 对于 Sc...

RPC 提供商选择Solana

是什么让 Solana RPC 变快,以及如何为你的应用选择最快的 RPC?

Solana 的性能要求低延迟的 RPC 基础设施。最适合你的用例的最快 RPC 取决于工作负载类型、地理邻近性以及你是否需要共享或专用资源。本文解释了影响 Solana RPC 速度的关键因素以及如何评估提供商。...

网络 RPCAvalanche

Polygon 主网 RPC:如何连接到链 ID 137?

Polygon 主网是一条 EVM 兼容链,链 ID 为 137,原生 Gas 代币为 POL。要连接,请将您的钱包或应用指向 HTTP 或 WebSocket RPC 端点,并在发送交易前确认链 ID 匹配 137。OnFinality 提供用于测试的公共 Polygon 端点,以及用于需要一致容...

网络 RPCEfinity

Solana 开发者应关注哪些专用节点访问功能?

专用 Solana RPC 节点为您的 dApp 提供对单个节点实例的独占访问,避免共享端点的“吵闹邻居”效应。需要评估的关键功能包括专用计算和带宽、可配置的速率限制、WebSocket 支持、归档访问和故障转移选项。本文解释了这些功能在实践中的含义,以及如何为生产工作负载选择正确的设置。...

RPC 提供商选择Sui

Sui gRPC 提供商:公共、托管与专用 RPC 对比

Sui gRPC 提供商为应用提供了通往 Sui 数据的类型化、流式路径,但访问模式差异显著。公共 Foundation gRPC 端点可能适合原型和低流量工具;在依赖它们之前,请评估当前的限制、支持和生产条款。托管 gRPC 提供商运营共享端点,具备文档化的容量、监控和支持,使其成为 dApp、索...

RPC 提供商选择Optimism

哪个RPC提供商提供最可靠的Optimism RPC端点?

# 哪个RPC提供商提供最可靠的Optimism RPC端点? 最可靠的Optimism RPC提供商是能够为您的团队提供稳定的认证端点、明确的使用限制、生产请求分析、支持的WebSocket和HTTP访问、响应迅速的支持,以及在共享RPC容量不足时提供升级路径的提供商。对于在Optimism上构建...

永远不用担心基础设施

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

开始