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

PublicNode Sepolia:它是什么以及何时使用其他端点

摘要

PublicNode Sepolia 是一个免费的、共享的 RPC 端点,用于以太坊 Sepolia 测试网。它适用于快速脚本、钱包设置和低流量测试,但共享公共端点并非为 CI 流水线、负载测试或任何需要稳定吞吐量的场景而设计。本文解释了该端点的定义、如何连接,以及何时迁移到托管或专用的 Sepolia RPC。

PublicNode Sepolia 是一个免费的、共享的 JSON-RPC 端点,用于以太坊 Sepolia 测试网。开发人员通常在设置钱包、编写 Hardhat 或 Foundry 脚本,或寻找一个无需注册即可粘贴到配置文件中的 Sepolia RPC URL 时发现它。它确实能胜任这些场景。但在你决定长期使用之前,值得回答的问题是:共享公共端点是否适合你的测试工作流。

本页介绍了该端点的定义、如何连接、所需的链设置,以及共享公共端点何时开始消耗你更多时间而非节省时间。如果你已经确定需要托管或专用的 Sepolia 端点,可以直接跳到 OnFinality 上的 Sepolia RPC 或在 RPC 定价 上比较方案。

PublicNode Sepolia 是否适合你的工作负载?

在公共端点之上构建任何东西之前,请使用此快速分类。

你的情况公共端点通常没问题迁移到托管或专用端点
钱包设置和手动测试是不需要
一次性脚本和快速合约调用是不需要
每次提交都运行的 CI 流水线有风险推荐
负载或压力测试否必需
索引或回填历史日志否必需
演示和黑客松原型是可选
任何面向用户的内容,即使在测试网上有风险推荐

模式很简单:当人类等待单个响应时,共享公共端点没问题。当机器按照你无法控制的计划发送大量请求时,它们就会变得不舒服。

PublicNode Sepolia 究竟是什么

PublicNode 是一组免费的、面向社区的 RPC 端点,适用于一系列 EVM 链,包括以太坊主网和 Sepolia。Sepolia 端点通过 HTTP 使用标准以太坊 JSON-RPC,因此任何支持 HTTP RPC URL 的客户端都可以与之通信:ethers、viem、web3.js、Hardhat、Foundry、MetaMask 等。

有几个属性对规划很重要:

  • 它是共享的。你是众多访问同一基础设施的调用者之一。
  • 它是未认证的。没有 API 密钥,这对于快速测试很方便,但对于任何需要归属或速率管理的场景则很尴尬。
  • 它是尽力而为的。没有支持合同、没有 SLA,也没有升级问题的渠道。
  • 它面向 HTTP。如果你的工作流依赖 WebSocket 订阅或大量 eth_getLogs 查询,请在依赖它之前验证支持情况。

这些都不会使它变坏。它只是针对特定工作的特定工具。

Sepolia 链设置一览

如果你正在配置钱包或框架,这些是你需要的以太坊 Sepolia 值。无论你指向哪个 Sepolia RPC 提供商,它们都是相同的。

设置值
网络名称Ethereum Sepolia
链 ID11155111
货币符号ETH
小数位数18
区块浏览器https://sepolia.etherscan.io
RPC URL你选择的 Sepolia 端点

链 ID 是人们最常出错的字段。Sepolia 是 11155111,不是 1(以太坊主网),也不是 5(已弃用的 Goerli 测试网)。如果钱包或脚本行为异常,请先检查链 ID。

使用 curl、ethers 和钱包连接

从最简单的检查开始。原始 JSON-RPC 调用会告诉你端点是否可达以及它服务于哪条链。

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

响应应该是一个十六进制链 ID。对于 Sepolia,它是 0xaa36a7,十进制为 11155111。如果你得到不同的值,说明你指向了错误的网络。

在 JavaScript 中使用 viem,同样的检查如下所示:

import { createPublicClient, http } from "viem";
import { sepolia } from "viem/chains";

const client = createPublicClient({
  chain: sepolia,
  transport: http("https://eth-sepolia.api.onfinality.io/public"),
});

const blockNumber = await client.getBlockNumber();
console.log("Sepolia head:", blockNumber);

对于钱包,使用上面的链设置添加自定义网络,并将你的 Sepolia RPC URL 粘贴到 RPC 字段中。MetaMask 和大多数 EVM 钱包接受相同的五个字段。

如果你想要一个无需管理自己的节点即可指向的 Sepolia 端点,OnFinality 在 https://eth-sepolia.api.onfinality.io/public 公开了一个公共 Sepolia RPC。对于开发和测试来说,这是一个合理的默认值。对于更重的负载,请参阅 OnFinality 上的 Sepolia RPC。

共享公共端点开始带来问题的地方

公共端点很少会大声失败。它们以看起来像你自己代码中的错误的方式降级。以下症状是开发人员最常误判的。

症状可能原因该怎么办
请求间歇性超时负载下共享容量不足添加重试,然后迁移到托管端点
429 或“请求过多”共享端点上的速率限制降低并发或切换提供商
eth_getLogs 返回错误或不完整数据查询范围或结果大小限制缩小区块范围,或使用为日志查询构建的端点
WebSocket 订阅断开无或有限的 WS 支持使用 HTTP 轮询,或使用支持 WS 的提供商
Nonce 和 gas 估算看起来过时节点落后于链头对照区块浏览器检查 eth_blockNumber
本地正常,CI 中失败CI 发送的请求比浏览器会话多在 CI 中使用带密钥的端点

CI 案例是最让团队惊讶的。一个在单个开发人员笔记本电脑上运行良好的测试套件,一旦在每个拉取请求上运行,每分钟可能产生数百次调用。这正是共享公共端点无法应对的工作负载。

你依赖的 Sepolia 端点应该关注什么

如果 Sepolia 是你发布流程的一部分,而不是一次性实验,请使用与主网相同的标准评估端点。

  • 传输支持。 HTTP 是基线。如果你订阅事件,WebSocket 很重要。检查提供商是否同时支持两者。
  • 归档和历史数据。 如果你重放过去的状态或回填日志,你需要归档访问权限,而不仅仅是最新区块。
  • 速率和并发限制。 在设计之前了解每秒请求数和突发限制。
  • 密钥管理。 带密钥的端点允许你分离环境、轮换凭证并查看每个项目的使用情况。
  • 可观测性。 请求指标和错误细分将“感觉慢”变成具体数字。
  • 故障转移。 单个端点就是单点故障。了解它不可用时会发生什么。
  • 支持路径。 在测试网上这不太重要,但当发布受阻时仍然重要。

OnFinality 在一系列网络上提供托管 RPC API 访问和专用节点基础设施,包括 Sepolia。你可以在 支持的 RPC 网络 上查看完整列表,并在 RPC 定价 上比较层级。如果你需要隔离容量而非共享访问,专用节点 是相关选项。

从公共端点迁移而不破坏你的设置

离开公共端点通常是配置更改,而不是重写。将其视为一个小型、可逆的迁移。

  1. 集中 RPC URL。 用单个环境变量(如 SEPOLIA_RPC_URL)替换硬编码的 URL。这是让其他一切变得简单的步骤。
  2. 添加回退。 配置一个主端点和一个辅助端点,这样单个提供商中断不会停止你的流水线。
  3. 验证链 ID。 切换后,确认 eth_chainId 仍然返回 0xaa36a7。
  4. 重新运行测试套件。 比较切换前后的通过率和时间。
  5. 观察错误率几天。 速率限制和超时错误应该下降;如果没有,问题可能出在你的客户端代码中。
// config.js
const RPC_URLS = [
  process.env.SEPOLIA_RPC_URL,
  process.env.SEPOLIA_RPC_URL_FALLBACK,
].filter(Boolean);

export function getSepoliaTransport() {
  return http(RPC_URLS[0], {
    retryCount: 2,
    onFetchResponse: async (response) => {
      if (!response.ok && RPC_URLS[1]) {
        console.warn("Primary Sepolia RPC failed, consider fallback");
      }
    },
  });
}

将端点保留在配置中而不是代码中,是价值最高的单一更改。它允许你交换提供商、添加回退,并为每个环境运行不同的端点,而无需触及应用程序逻辑。

Sepolia RPC 问题调试清单

当出现问题时,按顺序处理这些。大多数 Sepolia 问题都是这六个之一。

  • 错误的链 ID。 确认 0xaa36a7。主网端点会愉快地回答你的调用并返回主网数据。
  • 没有测试 ETH。 因 gas 失败的事务通常意味着余额为空。使用 Sepolia 水龙头充值。
  • 过时的 nonce。 如果你发送了一个从未确认的事务,nonce 仍然被消耗。在重新发送之前检查待处理事务。
  • 日志查询范围太宽。 在大区块范围上执行 eth_getLogs 是共享端点上最常见的错误来源。缩小范围。
  • 速率限制。 429 响应意味着你发送的请求超过了端点允许的数量。添加退避并降低并发。
  • 端点延迟。 将 eth_blockNumber 与区块浏览器进行比较。如果端点落后,请切换或等待。

保留一个快速探测脚本是值得的:

#!/usr/bin/env bash
RPC="${SEPOLIA_RPC_URL:-https://eth-sepolia.api.onfinality.io/public}"
echo "chainId: $(curl -s $RPC -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}')"
echo "blockNumber: $(curl -s $RPC -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}')"

对你正在考虑的每个端点运行它。只需几秒钟,就能告诉你端点是否存活并位于正确的链上。

关键要点

  • PublicNode Sepolia 是一个免费的、共享的 JSON-RPC 端点,用于以太坊 Sepolia 测试网,适合手动测试和轻量脚本。
  • Sepolia 链 ID 是 11155111(0xaa36a7);弄错这是最常见的配置错误。
  • 共享公共端点在 CI、负载测试和宽日志查询下会降级,而不是干净地失败。
  • 将 RPC URL 保留在配置中,而不是代码中,以便添加回退和交换提供商。
  • 对于需要稳定吞吐量、归档数据、WebSocket 支持或可观测性的工作负载,请使用托管或专用的 Sepolia 端点,例如 OnFinality 上的 Sepolia RPC。

常见问题

PublicNode Sepolia 免费吗? 是的,它是一个免费的公共端点。免费访问通常伴随着共享容量和尽力而为的可用性,而不是支持承诺。

Sepolia 链 ID 是什么? 11155111,十六进制为 0xaa36a7。在钱包和框架配置中使用它。

我可以在 CI 中使用 PublicNode Sepolia 吗? 可以,但 CI 产生的请求远多于交互式使用。如果你的流水线在每次提交时运行,带密钥的托管端点通常更可靠。

PublicNode Sepolia 支持 WebSocket 吗? 支持情况各不相同,并且可能变化。如果你的应用程序依赖订阅,请在构建之前验证 WebSocket 可用性,或使用记录 WS 支持的提供商。

如何获取 Sepolia ETH? 使用 Sepolia 水龙头。水龙头有自己的资格规则和速率限制,因此在请求之前检查当前要求。

何时应该切换到托管的 Sepolia RPC? 当 Sepolia 成为可重复工作流的一部分时:CI、自动化测试、索引,或任何有多个开发人员依赖它的场景。此时,速率限制、可观测性和故障转移开始比免费访问更重要。

后续步骤

如果你还在实验,公共 Sepolia 端点是一个不错的起点。如果 Sepolia 现在是你团队发布方式的一部分,请查看 OnFinality 上的 Sepolia RPC,检查 RPC 定价,如果你还需要主网或其他测试网,请浏览 支持的 RPC 网络。有关评估提供商的更广泛框架,请阅读 如何选择 RPC 提供商。

RPC 知识库

相关 RPC 内容

网络 RPCPolkadot

Polkadot 网络迁移:有哪些变化以及如何影响您的 RPC 端点?

Polkadot 资产中心迁移(AHM)将核心网络功能——余额、质押和治理——从中继链迁移到了资产中心系统平行链。对于 RPC 用户来说,这意味着端点现在必须指向资产中心以获取链上用户数据,而中继链仍然是共识和跨链消息的入口点。开发者应确认其 RPC 提供商同时支持中继链和资产中心端点,以避免中断。...

RPC 提供商选择Efinity

Solana RPC 上的专用节点与共享节点访问:你应该比较什么?

共享 Solana RPC 将许多调用者集中到同一个后端,这保持了低成本且设置简单,但在负载下吞吐量和延迟变得不可预测。专用 Solana 节点为一个工作负载提供其自己的基础设施,因此你可以控制容量、速率限制以及轮询或订阅的积极程度。本文详细分析了权衡、适合每种模型的工作负载,以及如何在承诺之前评估...

网络 RPCPolygon

什么是 Polygon 最终性,它如何影响您的 dApp?

Polygon 最终性是指交易在 Polygon PoS 链上变得不可逆转的时刻。随着 Heimdall v2 升级,最终性现在大约在 5 秒内实现,而之前需要 1-2 分钟,这使得网络更适合支付和实时应用。对于开发者来说,理解最终性对于设计用户体验、处理重组以及选择合适的 RPC 基础设施来监控最...

RPC 提供商选择Moonbeam

Moonbeam RPC 的可用性有多可靠,您应该监控什么?

Moonbeam RPC 的可用性决定了您的 dApp 能否读取链上状态、提交交易,并在流量高峰时保持响应。本页解释了可用性声明实际涵盖的内容、如何通过自己的监控来验证这些声明,以及如何选择符合您可靠性需求的 RPC 基础设施。...

网络 RPCBNB Chain

如何查找和配置 BNB Smart Chain 端点?

BNB Smart Chain(BSC)公开了 JSON-RPC 端点,用于读取区块链数据和发送交易。mainnet 端点是 https://bsc-dataseed.bnbchain.org,chain ID 为 56;testnet 端点使用 chain ID 97。公共端点适合原型开发,但存在...

网络 RPCAvalanche

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

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

永远不用担心基础设施

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

开始