摘要
获取 Polygon Amoy RPC 端点、链 ID 和浏览器详细信息,用于测试网开发。了解如何配置钱包和 dApp、从水龙头获取测试 POL,以及调试常见的 RPC 问题。比较公共、共享和专用节点选项,以获得可靠的 Amoy 访问。
快速参考:Polygon Amoy 端点和链设置
如果您正在 Polygon Amoy(Polygon PoS 网络的测试网)上进行开发,您需要正确的 RPC 端点和链配置来连接钱包、部署合约或运行自动化测试。以下是关键信息一览:
| 设置 | 值 |
|---|---|
| 网络名称 | Amoy |
| 链 ID | 80002 |
| 原生货币 | POL(18 位小数) |
| 区块浏览器 | https://amoy.polygonscan.com |
| 公共 RPC 端点 | https://polygon-amoy.api.onfinality.io/public |
此公共端点可免费用于开发和测试。对于生产级测试网工作负载,请考虑使用专用节点或更高级别的 RPC 服务,以避免速率限制并确保可靠性。OnFinality 为 Polygon Amoy 和许多其他网络提供 RPC 服务,并提供灵活的 定价 选项。
决策指南:选择正确的 Amoy RPC 访问方式
在开始编码之前,请决定如何访问 Amoy RPC。您的选择取决于您的工作负载和可靠性需求:
- 快速原型或一次性脚本:使用公共端点。它是免费的,足以满足偶尔的请求。
- 频繁调用的活跃开发:具有更高速率限制的共享 RPC 服务更好。公共端点在高负载下可能会限流或失败。
- 自动化 CI/CD 或负载测试:考虑使用专用节点,以确保一致的性能并避免基于 IP 的速率限制。
- 使用测试网进行暂存的生产 dApp:建议使用具有 SLA 和故障转移的托管 RPC 服务。
对于大多数开发者来说,从公共端点开始是可以的,但如果您遇到速率限制或需要 WebSocket 支持,请升级到托管服务。OnFinality 提供共享和专用选项,您可以在我们的 RPC 定价 页面上比较计划。
什么是 Polygon Amoy,为什么使用它?
Polygon Amoy 是 Polygon PoS 的官方测试网,取代了旧的 Mumbai 测试网。它允许开发者在模拟主网的环境中测试智能合约和 dApp,而无需花费真实资金。主要特点:
- 链 ID 80002 – 与主网(137)不同,以防止交易重放。
- POL 代币 – 原生 gas 代币,从水龙头获取。
- PolygonScan Amoy – 用于验证交易和合约的区块浏览器。
使用测试网对于开发至关重要,因为它允许您快速迭代、调试失败并模拟用户交互,而无需承担财务风险。Amoy 也被基础设施提供商用于在主网部署前测试新功能。
配置您的钱包或 dApp
要连接 MetaMask 等钱包或使用 ethers.js 或 viem 的 dApp,您需要添加 Amoy 网络。以下是如何在 MetaMask 中手动配置:
- 打开 MetaMask 并点击网络下拉菜单。
- 点击“添加网络”并填写详细信息:
- 网络名称:Amoy
- 新的 RPC URL:
https://polygon-amoy.api.onfinality.io/public - 链 ID:80002
- 货币符号:POL
- 区块浏览器 URL:
https://amoy.polygonscan.com
- 保存并切换到 Amoy 网络。
对于编程访问,以下是使用 ethers.js 的示例:
import { ethers } from "ethers";
const provider = new ethers.JsonRpcProvider("https://polygon-amoy.api.onfinality.io/public");
const network = await provider.getNetwork();
console.log("Chain ID:", network.chainId); // 80002
以及使用 viem:
import { createPublicClient, http } from 'viem';
const client = createPublicClient({
chain: {
id: 80002,
name: 'Amoy',
nativeCurrency: { name: 'POL', symbol: 'POL', decimals: 18 },
rpcUrls: { default: { http: ['https://polygon-amoy.api.onfinality.io/public'] } },
},
transport: http()
});
const blockNumber = await client.getBlockNumber();
console.log("Block number:", blockNumber);
从水龙头获取测试 POL
为了支付 Amoy 上的 gas 费用,您需要测试 POL。官方水龙头可在 faucet.polygon.technology 获取。您需要连接钱包并请求代币。也有一些社区水龙头,但请始终验证其合法性。
如果您正在自动化测试,您可以以编程方式请求 POL,但请注意速率限制。对于 CI/CD,请考虑预先为钱包充值,并在测试环境中使用私钥。
常见 RPC 错误及解决方法
在使用 Amoy RPC 时,您可能会遇到错误。以下是快速故障排除表:
| 错误 | 可能原因 | 解决方案 |
|---|---|---|
network does not support | 配置中的链 ID 错误 | 确保链 ID 为 80002 |
nonce too low | 交易 nonce 不匹配 | 重置您的账户 nonce 或使用 eth_getTransactionCount |
insufficient funds | 没有足够的 POL 支付 gas | 从水龙头获取测试 POL |
rate limit exceeded | 对公共端点的请求过多 | 使用托管 RPC 服务或专用节点 |
connection refused | 网络问题或端点宕机 | 检查您的互联网,重试,或使用备用端点 |
对于 nonce 问题,您可以查询待处理的 nonce:
curl -X POST https://polygon-amoy.api.onfinality.io/public \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_getTransactionCount","params":["0xYourAddress","pending"],"id":1}'
Amoy 的公共、共享与专用 RPC 对比
选择正确的 RPC 访问模式对于您的开发工作流程至关重要。以下是比较:
| 访问类型 | 优点 | 缺点 | 最适合 |
|---|---|---|---|
| 公共端点 | 免费,易于开始 | 速率限制,无 SLA,可能较慢 | 原型设计,小型脚本 |
| 共享 RPC 服务 | 更高的限制,更好的可靠性,WebSocket 支持 | 需要付费,共享资源 | 活跃开发,dApp 暂存 |
| 专用节点 | 完全控制,明确的速率限制,一致的性能 | 更昂贵,需要管理 | 高容量测试,生产级暂存 |
OnFinality 提供共享和专用选项。我们的 RPC 定价 页面详细介绍了计划,您可以在我们的 网络页面 上查看所有支持的网络。
使用 WebSocket 和 JSON-RPC 进行调试
对于实时应用程序,您可能需要 WebSocket 支持。上述公共端点仅支持 HTTP,但 OnFinality 为专用节点提供 WebSocket 端点。要测试 WebSocket 连接,您可以使用简单的脚本:
const WebSocket = require('ws');
const ws = new WebSocket('wss://polygon-amoy.api.onfinality.io/public');
ws.on('open', () => {
ws.send(JSON.stringify({jsonrpc: '2.0', method: 'eth_subscribe', params: ['newHeads'], id: 1}));
});
ws.on('message', (data) => {
console.log('Received:', data.toString());
});
注意:公共端点可能不支持 WebSocket;请检查您的提供商的文档。对于生产环境,请使用支持 WebSocket 的专用节点。
关键要点
- Polygon Amoy 是 Polygon PoS 的测试网,链 ID 为 80002,POL 作为 gas 代币。
- 公共 RPC 端点是
https://polygon-amoy.api.onfinality.io/public。 - 使用正确的链设置配置您的钱包或 dApp,以避免错误。
- 从官方水龙头获取测试 POL 以支付交易费用。
- 对于可靠的高容量访问,请考虑使用 OnFinality 的托管 RPC 服务或专用节点。
- 在部署到 Polygon 主网之前,始终在 Amoy 上进行测试。
常见问题解答
Polygon Amoy RPC 端点是什么?
公共 RPC 端点是 https://polygon-amoy.api.onfinality.io/public。您也可以使用其他提供商,但这个免费且可靠,适合开发。
如何将 Amoy 添加到 MetaMask?
转到设置 > 网络 > 添加网络,然后输入链详细信息:RPC URL、链 ID 80002、符号 POL 和浏览器 URL。
我在哪里可以获取测试 POL?
使用官方 Polygon 水龙头 faucet.polygon.technology。连接您的钱包并请求代币。
我可以将 WebSocket 与 Amoy 一起使用吗?
公共端点可能不支持 WebSocket。对于 WebSocket,您需要专用节点或提供该功能的提供商。OnFinality 的专用节点支持 WebSocket。
Amoy 和 Mumbai 有什么区别?
Mumbai 已弃用。Amoy 是当前的测试网,具有不同的链 ID(80002 对 80001),并使用 POL 而不是 MATIC。
公共端点是否有限速?
是的,公共端点通常有限速以防止滥用。对于大量使用,请考虑付费 RPC 服务。
如何检查我的 RPC 连接是否正常?
使用简单的 curl 命令调用 eth_chainId 并验证响应是否为 0x13882(80002 的十六进制)。