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

什么是 Starknet 端点,如何选择?

摘要

Starknet 端点是您的应用程序用来向 Starknet 主网或 Sepolia 测试网发送 JSON-RPC 请求的 URL。它提供了读取区块、估算费用、提交交易和订阅事件的方法。

选择合适的端点意味着检查网络、RPC 版本、速率限制、归档数据和 WebSocket 支持。公共端点适合原型开发;生产级 dApp 通常需要私有 API 端点或来自 OnFinality 等提供商的专用节点。

Starknet 端点是您的应用程序通过 JSON-RPC 与 Starknet 通信的 URL。它是您的 dApp、钱包或索引服务与 Starknet 主网或 Sepolia 网络之间的桥梁。本页说明在 Starknet 端点中需要注意什么、如何调用它,以及如何在公共、私有和专用选项之间进行选择。

Starknet 端点决策清单

在将端点接入应用程序之前,请使用此清单比较选项。

标准检查内容重要性
网络主网还是 Sepolia?使用签名交易访问错误的网络可能代价高昂或造成混淆。
RPC 规范版本提供商是否公开您的 SDK 所期望的 Starknet JSON-RPC 版本?Starknet 会随时间升级 RPC 规范;不匹配会导致方法未找到或模式错误。
访问模式公共、API 密钥还是专用节点?公共端点方便但通常共享;专用基础设施让您拥有更多控制权。
速率限制每秒请求数、每日上限和公平使用政策高流量 dApp 如果限制过低,会遇到 429 响应。
归档数据历史状态和追踪支持浏览器、分析工具和一些 DeFi 功能需要归档数据。
WebSocket 支持用于订阅的 WSS 端点实时事件流需要支持 WebSocket 的提供商。
延迟和地理位置提供商节点的位置距离影响交互式 dApp 和交易工具的响应时间。
安全与隐私HTTPS、密钥存储、数据日志政策看到您流量的端点应符合您的安全期望。

什么是 Starknet 端点?

Starknet 是以太坊上的第 2 层 ZK-rollup。它在链下批量处理交易,生成 STARK 证明,并在以太坊上结算。应用程序通过 JSON-RPC API 与 Starknet 交互,而不是直接查询以太坊。

Starknet 端点只是接受这些 JSON-RPC 调用的 HTTP/HTTPS 或 WebSocket URL。它公开了诸如 starknet_blockNumber、starknet_getBlockWithTxs 和 starknet_call 等方法。您向端点发送 JSON-RPC 请求,它返回有关区块、交易、事件或合约状态的数据。

每当您需要以下操作时,您都需要一个端点:

  • 从钱包或 dApp 发送交易。
  • 使用 starknet_call 读取智能合约状态。
  • 在提交交易前估算费用。
  • 索引事件或监视待处理交易。
  • 部署和管理 Cairo 合约。

端点本身不是节点。节点运行 Starknet 客户端软件,包括共识和状态数据库。端点提供商运营节点并向您公开它们,因此您无需自己运行 Pathfinder、Juno 或其他客户端。

Starknet 主网和 Sepolia 端点

Starknet 有两个对大多数开发人员重要的环境:

  • 用于生产合约和真实资产的 Starknet 主网。
  • 用于在主网部署之前进行开发、暂存和测试的 Starknet Sepolia 测试网。

每个网络的端点 URL 不同。选择特定于网络的 URL,而不是依赖可能指向错误链的通用端点。大多数提供商都清楚地进行标记,例如 URL 路径中的 mainnet 和 sepolia。

一些实用说明:

  • 公共测试网端点通常适合早期开发。
  • 主网公共端点可能适用于快速读取,但它们是共享的,并且可能受到速率限制。
  • 对于专用设置,请选择托管端点,为您提供私有 URL 和可预测的限制。

如果您想使用 OnFinality 进行 Starknet 请求,请查看支持的 RPC 网络以获取当前端点详细信息和网络可用性。

公共、私有和专用端点

公共端点

公共端点是任何人都可以调用的开放 URL。它们非常适合项目的头五分钟:使用 curl 获取区块号、读取合约或检查测试网行为。但是,当流量激增时,它们对可用性、速率限制或数据新鲜度不提供任何保证。

私有 API 端点

私有端点需要 API 密钥。提供商通过专用 URL 路由您的请求,并应用特定于计划的限制。这些适用于暂存环境、生产 dApp 和需要稳定身份验证模型的工具。它们还允许您查看使用指标并按密钥调试问题。

专用节点

专用 Starknet 节点为您提供不与其他客户共享的基础设施。您可以请求归档数据、启用额外的 RPC 方法,并为您的工作负载调整节点。这对于分析管道、区块浏览器以及发出大量或异常请求的应用程序非常重要。

OnFinality 同时提供 RPC API 服务和专用节点基础设施。使用专用节点,您拥有自己的端点,而不是在共享池中与其他用户竞争。在迁移到专用节点之前,请检查您的请求量、归档需求和 WebSocket 使用情况,以选择正确的设置。

如果您只需要测试共享和专用基础设施之间的差异,请在承诺之前比较 RPC 定价 和 API 服务 选项。

使用 JSON-RPC 连接到 Starknet 端点

所有 Starknet 端点都遵循 JSON-RPC 2.0 协议。基本请求包括方法名称、可选参数和 id。

以下是一个 curl 示例,用于读取最新区块号:

curl -X POST https://YOUR_STARKNET_RPC_URL -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"starknet_blockNumber","params":[],"id":1}'

如果请求成功,响应如下所示:

{"jsonrpc":"2.0","result":"0x4a","id":1}

result 是十六进制区块号。大多数 Starknet RPC 方法使用十六进制编码的整数和 Cairo 字符串,因此在解析响应时请记住这一点。

在 JavaScript 中,相同的调用如下所示:

const response = await fetch("https://YOUR_STARKNET_RPC_URL", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    jsonrpc: "2.0",
    method: "starknet_blockNumber",
    params: [],
    id: 1
  })
});
const data = await response.json();
console.log(data.result);

在编写生产代码时,请使用官方 Starknet RPC 规范中的方法列表。端点提供商可能支持不同的规范版本,因此请将您的 SDK 版本与端点版本匹配。如果您看到 Method not found,则端点可能运行比您的客户端期望的更新或更旧的规范。

选择提供商之前要评估什么

在编写生产代码之前,您可以使用一个小型测试脚本评估提供商。检查以下内容:

  1. 网络定位:URL 是否明确标记为主网或 Sepolia?
  2. RPC 版本:端点公开哪个 Starknet 规范版本?
  3. 速率限制:超过限制时会发生什么?您会收到 429 还是静默限制?
  4. 归档支持:您能否无错误地查询历史状态?
  5. WebSocket 支持:提供商是否提供用于订阅的 WSS?
  6. 故障转移:如果您的主要提供商宕机,您能否切换端点?

如需更深入的比较,请阅读如何选择 RPC 提供商,了解适用于任何链(不仅仅是 Starknet)的问题。

常见的 Starknet 端点陷阱

  • 使用错误的网络 URL。 Sepolia 端点和主网端点返回不同的数据。在签名或广播任何内容之前,请仔细检查。
  • 忘记内容类型。 Starknet JSON-RPC 服务器会拒绝没有 Content-Type: application/json 的请求。
  • 假设所有提供商都支持相同的方法。 某些端点仅公开基本规范,而其他端点则添加额外方法。首先确认方法可用性。
  • 混合 RPC 版本。 Starknet 客户端和 SDK 针对特定规范版本。提供 v0.9 的端点可能会拒绝为 v0.8 编写的调用,反之亦然。
  • 忽略速率限制。 当共享池饱和时,公共端点返回 429。添加重试逻辑,并考虑使用私有 API 密钥或专用节点。
  • 使用不支持的 WebSocket 端点。 并非所有提供商都提供 WSS 订阅。如果您的应用需要事件流,请在启动前验证。

对 Starknet 端点进行故障排除

从最小请求开始以隔离问题:

  1. 向端点发送 starknet_blockNumber。
  2. 检查 HTTP 状态代码和 JSON-RPC 错误字段。
  3. 如果收到解析器错误,请确认请求体是有效的 JSON。
  4. 如果收到 Method not found,请确认 RPC 规范版本。
  5. 如果收到 429,请等待后重试,或移至更高级别的端点。
  6. 如果收到空结果,请验证所请求的区块或合约地址是否存在于您查询的网络上。

对于长期运行的服务,不要硬编码单个端点。维护一个健康的 RPC URL 列表,并在您的客户端中构建故障转移。当使用可能在没有警告的情况下降级的公共端点时,这一点尤其重要。

关键要点

  • Starknet 端点是连接您的应用与 Starknet 主网或 Sepolia 的 JSON-RPC URL。
  • 公共端点适合原型开发,但生产工作负载需要可预测的限制和支持。
  • 私有 API 端点和专用节点为您提供更多控制、可观察性和稳定性。
  • 在集成之前,请验证网络、RPC 规范版本、归档支持和 WebSocket 可用性。
  • OnFinality 可以提供 RPC 和专用节点基础设施;有关详细信息,请参阅支持的 RPC 网络和 RPC 定价。

常见问题解答

什么是默认的 Starknet 端点? 没有单一的默认端点。您需要提供商 URL 或来自节点提供商的公共端点。您可以找到社区维护的列表或使用您的提供商仪表板。对于 OnFinality,请查看支持的 RPC 网络以获取当前详细信息。

公共 Starknet 端点对生产环境安全吗? 公共端点通常是共享的并且受到速率限制。它们可以用于轻量级读取,但生产 dApp 应使用私有端点或专用节点以获得可预测的性能,并避免依赖他人的可用性。

主网和 Sepolia 端点有什么区别? 主网端点与 Starknet 生产和真实资产交互。Sepolia 端点指向测试网,用于开发。它们是单独的 URL,并返回完全不同的链状态。

Starknet 是否支持 WebSocket 端点? 一些提供商提供用于实时订阅的 WebSocket 端点。在依赖它之前,请检查提供商的文档。如果 WebSocket 不可用,您可能需要轮询或使用专用节点。

如何快速测试 Starknet 端点? 使用 curl 发送一个带有 starknet_blockNumber 的单行 JSON-RPC 请求。如果您获得十六进制区块号,则端点可访问且已同步。

RPC 知识库

相关 RPC 内容

RPC 提供商选择

PublicNode 速率限制:预期与规划指南

PublicNode 为许多链提供免费的 RPC 端点,但像大多数公共服务一样,它应用速率限制以保护共享基础设施。本文解释了这些限制通常如何工作、如何检测它们,以及何时为生产工作负载迁移到专用或商业 RPC 提供商。...

RPC 提供商选择Arbitrum

什么是Arbitrum RPC节点,如何选择合适的节点?

Arbitrum RPC节点是一个端点,让你的dApp能够读取和写入Arbitrum One、Nova或Sepolia测试网的数据。选择合适的节点提供商需要评估吞吐量限制、归档数据支持、WebSocket可用性以及故障转移模式。本文涵盖了链设置、公共与私有端点,以及一个决策清单,帮助你选择符合生产需...

测试网 RPCTON

什么是 TON 测试网 RPC?如何使用它?

TON 测试网 RPC 端点允许你与 TON 测试网交互,这是一个用于构建和测试 dApp、钱包和智能合约的沙盒环境,无需承担真实 TON 的风险。本文解释了可用的端点、如何认证,以及如何为你的开发工作流选择可靠的提供商。...

网络 RPCPolkadotAsset Hub

Polkadot Asset Hub 迁移:开发者中继链过渡指南

# Polkadot Asset Hub 迁移:开发者中继链过渡指南 Polkadot Asset Hub 迁移于 2025 年 11 月 4 日执行,将核心面向用户的功能——余额、质押、治理——从中继链迁移到 Asset Hub 系统平行链。这一架构转变减少了中继链的膨胀,实现了更快的升级,并为 ...

网络 RPCPichiu

How to Connect to Pichiu Network RPC for Oracle Data

Pichiu Network provides decentralized oracle services on Kusama. This article explains how developers can integrate with Pichiu using RPC endpoints, c...

区块链基础设施

什么是 TronGrid,何时应使用它进行 TRON RPC 访问?

TronGrid 是 TRON 网络的托管节点和 API 服务。它让开发者无需运行自己的基础设施即可通过 HTTP 和 gRPC 访问 TRON 全节点,并在基础节点接口之上添加了扩展 API,用于账户历史、TRC-20 转账、合约事件和内部交易等。如果你看到 TronGrid 被描述为“TRON ...

永远不用担心基础设施

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

开始