摘要
Sepolia RPC 端点是以太坊 Sepolia 测试网的 JSON-RPC 接口。开发者可以在低风险环境中部署和测试智能合约。本文提供官方链设置、公共和私有 RPC URL、测试 ETH 水龙头以及决策清单,帮助您选择适合开发工作流程的服务商。
Sepolia RPC 端点决策清单
在开始 Sepolia 开发之前,请快速检查此清单以避免常见配置陷阱:
- 确认链 ID: Sepolia 使用链 ID
11155111。请再三检查你的钱包或 dApp 配置。 - 获取测试 ETH: 使用可靠的水龙头。许多水龙头需要一笔公开的以太坊主网交易或社交登录。
- 决定使用公共还是私有 RPC: 公共端点是免费的,但通常有速率限制。私有端点(通过 RPC 服务商)提供更高的限制、存档数据和 WebSocket 支持。
- 检查存档数据需求: 如果你的 dApp 需要历史状态(例如用于分析或审计),请确保你的 RPC 服务商提供存档节点访问。
- 验证 WebSocket 支持: 对于实时功能(如交易订阅),请确认端点支持 WSS。
- 测试连接: 运行简单的
curl或eth_chainId调用以验证端点响应。 - 规划故障转移: 如果使用单一的公共端点,请注意它可能离线。考虑使用具有负载均衡或多端点设置的服务商。
什么是 Sepolia RPC 端点?
Sepolia 是以太坊主要的权益证明测试网,专为应用层和智能合约测试而设计。与已弃用的 Goerli 测试网不同,Sepolia 更稳定,并镜像了主网的共识环境。Sepolia RPC 端点是用于向 Sepolia 区块链发送 JSON-RPC 请求的 URL。它允许你部署合约、查询状态和模拟交易,而无需花费真实的 ETH。
关键细节:
- 链 ID: 11155111 (0xaa36a7)
- 原生货币: 测试 ETH(无实际价值)
- 出块时间: ~12 秒
Sepolia 链设置
使用以下设置将 Sepolia 添加到你的钱包或 dApp:
| 参数 | 值 |
|---|---|
| 网络名称 | Ethereum Sepolia Testnet |
| RPC URL(公共) | https://ethereum-sepolia-rpc.publicnode.com |
| 链 ID | 11155111 (0xaa36a7) |
| 货币符号 | ETH |
| 区块浏览器 | https://sepolia.etherscan.io |
| WebSocket (WSS) | wss://ethereum-sepolia-rpc.publicnode.com |
注意: 公共 RPC URL 是共享的且有速率限制。对于生产级别的测试或更高吞吐量,请考虑来自专门服务商的私有 RPC 端点。
在 Sepolia 上获取测试 ETH
要在 Sepolia 上部署合约或发送交易,你需要测试 ETH。以下是一些水龙头选项(始终验证水龙头合法性):
- Alchemy Sepolia 水龙头 – 需要 Alchemy 账户和少量主网 ETH(用于燃料)。
- Infura 水龙头 – 类似于 Alchemy,需要 Infura 账户。
- 公共水龙头 – 在 Etherscan 或其他社区网站上搜索 "Sepolia faucet"。请谨慎,有些可能要求过多权限。
大多数水龙头限制每次请求可获得的金额(例如每天 0.5–1 测试 ETH)。如果需要更多,可以在开发者社区中询问。
公共与私有 Sepolia RPC 服务商
连接 Sepolia 时,你有两种主要类型的 RPC 端点:公共(免费)和私有(来自节点服务商)。以下比较可帮助你做出决定。
| 标准 | 检查什么 | 为什么重要 |
|---|---|---|
| 速率限制 | 公共端点通常限制每秒请求数(例如 10–100 req/s)。 | 如果你的 dApp 或脚本发出许多并发请求,你会达到限制。私有端点提供更高或无限的限制。 |
| 存档数据 | 公共节点通常运行剪枝节点。 | 对于历史状态查询(如 eth_getLogs 与旧区块),你需要存档节点支持。 |
| WebSocket 支持 | 公共端点可能不提供 WSS。 | 实时功能(待处理交易、事件订阅)需要 WebSocket。 |
| 可靠性 | 公共端点可能宕机或过载。 | 对于持续测试或 CI/CD,具有负载均衡的私有端点更可靠。 |
| 隐私 | 公共节点可能记录你的 IP 和请求。 | 如果你不希望暴露 IP 或请求模式,具有隐私策略的私有端点更好。 |
许多开发者从公共端点开始进行简单测试,随着项目发展升级到私有端点。OnFinality 为 Sepolia 和其他测试网提供共享和专用节点选项,具有存档数据和 WebSocket 支持。
如何连接 Sepolia
以下是使用常见工具和库连接 Sepolia 的示例。
使用 curl
测试公共端点:
curl https://ethereum-sepolia-rpc.publicnode.com \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'
预期响应(十六进制链 ID):
{"jsonrpc":"2.0","result":"0xaa36a7","id":1}
使用 ethers.js (JavaScript)
const { ethers } = require("ethers");
const provider = new ethers.providers.JsonRpcProvider("https://ethereum-sepolia-rpc.publicnode.com");
async function getChainId() {
const network = await provider.getNetwork();
console.log("Chain ID:", network.chainId); // 11155111
}
getChainId();
使用 web3.js
const Web3 = require("web3");
const web3 = new Web3("https://ethereum-sepolia-rpc.publicnode.com");
web3.eth.getChainId().then(console.log); // 11155111
Hardhat 配置
如果你使用 Hardhat 进行本地开发,请在 hardhat.config.js 中添加 Sepolia:
module.exports = {
networks: {
sepolia: {
url: "https://ethereum-sepolia-rpc.publicnode.com",
accounts: ["<PRIVATE_KEY>"]
}
}
};
常见问题和故障排除
1. 速率限制
公共端点通常在超过限制时返回 429 Too Many Requests。解决方案: 使用私有端点或实现请求限流。
2. 过时的区块数据
如果你的节点落后,你的 RPC 调用可能返回过时的数据。解决方案: 确保你的服务商节点已同步。大多数托管服务商会自动处理。
3. WebSocket 连接断开
一些公共端点不维护长期的 WebSocket 连接。解决方案: 使用专门支持 WebSocket 的服务商或实现重连逻辑。
4. Nonce 错误
当快速发送多个交易时,你可能看到 "nonce too low" 或 "transaction underpriced"。解决方案: 手动跟踪 nonce 或使用内部管理 nonce 的服务商。
5. 测试 ETH 不足
确保你的账户有足够的测试 ETH 来支付燃料。水龙头可能有每日限制。解决方案: 从多个水龙头请求或与团队协调。
关键要点
- Sepolia 是用于智能合约开发的以太坊推荐测试网。其链 ID 为
11155111。 - 公共 RPC 端点是免费的,但有速率限制且没有存档数据。适用于轻量级测试。
- 私有 RPC 服务商提供更高的吞吐量、存档数据、WebSocket 和更好的可靠性。在选择前评估你的项目需求。
- 始终验证水龙头合法性,切勿分享你的私钥。
- 使用上述清单确保顺利设置。
有关所有支持的测试网和主网的完整列表,请访问我们的网络页面。如果你需要专用基础设施,请查看我们的 RPC 定价 以找到适合你规模的计划。
常见问题
Sepolia 的链 ID 是什么?
Sepolia 的链 ID 是 11155111(十六进制 0xaa36a7)。
如何获取 Sepolia 测试 ETH? 使用 Alchemy 的 Sepolia 水龙头、Infura 的水龙头或社区水龙头。每个通常需要一笔主网交易或社交登录。
我可以在生产环境中使用 Sepolia 吗? 不能,Sepolia 是测试网。在以太坊主网或 Layer 2 主网上部署你的最终应用程序。
Sepolia 和 Goerli 有什么区别? Sepolia 是权益证明测试网,而 Goerli 是跨客户端测试网,现已弃用。Sepolia 更稳定,推荐用于新项目。
我需要为 Sepolia 使用专用节点吗? 对于简单测试不需要。公共端点就足够了。对于持续集成、负载测试或需要存档数据的应用程序,建议使用私有端点。
公共 Sepolia 端点是否提供存档数据? 通常不提供。公共节点运行剪枝节点。对于存档数据,你需要提供存档节点访问的私有服务商。
我可以运行自己的 Sepolia 节点吗? 可以,你可以运行自己的节点(例如使用 Geth 或 Lighthouse)。但这需要硬件和维护。像 OnFinality 这样的托管服务商可以简化此过程。
最后更新:2025-03-20