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

什么是 SORA API?如何在 dApp 中使用它?

摘要

SORA API 指的是允许应用程序在 SORA 网络上读写数据的 RPC 端点和 JSON-RPC 方法。本文解释了什么是 SORA API、如何连接到它,以及如何为生产工作负载选择公共端点或专用端点。

快速决策指南:应该使用哪个 SORA 端点?

在编写任何代码之前,请决定哪个 SORA API 端点适合您的工作负载。正确的选择取决于您预期的流量、是否需要历史数据,以及您的应用程序对停机的敏感程度。

  • 原型或低流量 dApp:公共端点适合开发和少量用户。您可以从公共 RPC URL 开始,如果遇到速率限制,再切换。
  • 流量稳定的生产 dApp:使用像 OnFinality 这样的托管 RPC 服务,以获得专用的吞吐量和可靠性。公共端点在高负载下可能会限流或不可用。
  • 索引器或分析:您可能需要归档数据或追踪支持。请检查提供商是否提供归档节点以及启用了哪些方法。
  • 高频交易或 DeFi 机器人:延迟和 WebSocket 支持很重要。专用节点提供一致的性能,并允许您调整节点配置。

如果不确定,可以从提供免费层级的托管提供商开始,随着使用量增长再扩展。OnFinality 提供随需求扩展的 RPC 定价,您可以在 网络页面 上查看所有支持的网络。

什么是 SORA API?

SORA API 是允许应用程序与 SORA 区块链交互的 JSON-RPC 端点集合。SORA 是一个基于 Polkadot 的网络,专注于去中心化金融(DeFi)和超国家经济体系的创建。该 API 允许您查询链状态、提交交易和监听事件。

SORA 使用 Substrate 框架,因此其 RPC 接口与其他 Polkadot 平行链类似。如果您使用以太坊兼容层,可以使用标准的以太坊风格 JSON-RPC 方法,或者使用 Substrate 特定方法进行更深入的链交互。

对于大多数开发者来说,SORA API 是构建钱包、DeFi 仪表板或任何需要在 SORA 上读写数据的应用程序的门户。

SORA 链设置一览

以下是配置钱包或 dApp 连接到 SORA 所需的关键设置:

设置值
网络名称SORA
RPC 端点使用 SORA 网络页面 上的公共端点或您提供商的端点
链 ID参考网络配置(通常为 0x2b 或类似值,适用于基于 Substrate 的链)
符号XOR
区块浏览器SORA 浏览器(外部)

始终从官方网络配置验证链 ID 和端点,以避免连接到测试网或恶意端点。

如何连接到 SORA API

您可以使用标准的 JSON-RPC 调用与 SORA API 交互。以下是一个简单的 curl 示例,用于获取最新区块号:

curl -X POST <SORA_RPC_URL> \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"chain_getHeader","params":[],"id":1}'

将 <SORA_RPC_URL> 替换为实际的端点。对于 JavaScript 开发者,您可以使用 polkadot-js/api 库与 SORA 交互:

const { ApiPromise, WsProvider } = require('@polkadot/api');

const wsProvider = new WsProvider('wss://sora.api.onfinality.io/public-ws');
const api = await ApiPromise.create({ provider: wsProvider });

const lastHeader = await api.rpc.chain.getHeader();
console.log('Last block number:', lastHeader.number.toNumber());

注意:上面的 WebSocket 端点只是一个示例。请使用 SORA 网络页面 上的官方端点或您提供商的文档。

您最常用的 SORA API 方法

根据您的应用程序,您将混合使用 Substrate 和以太坊兼容的方法。以下是最常见的方法:

  • 链状态:chain_getHeader、chain_getBlock、state_getStorage
  • 账户余额:state_getBalance(Substrate)或 eth_getBalance(以太坊兼容)
  • 交易提交:author_submitExtrinsic(Substrate)或 eth_sendRawTransaction(以太坊兼容)
  • 事件:chain_subscribeNewHeads(WebSocket)用于实时更新

如果您正在构建钱包,您可能会使用余额和交易方法。如果您正在构建索引器,您将需要区块和存储方法。

公共与专用 SORA API 端点

公共端点很方便,但有局限性。它们被许多用户共享,因此可能会被限流或在高峰时段变慢。对于生产应用程序,专用端点提供:

  • 一致的性能:没有嘈杂的邻居影响您的请求延迟。
  • 更高的速率限制:您可以每秒发出更多请求而不会触发限制。
  • 自定义配置:您可以启用归档数据或调整节点设置以匹配您的工作负载。

OnFinality 为 SORA 和其他网络提供 专用节点。使用专用节点,您拥有自己的 RPC 端点,不与其他用户共享,从而获得更多控制和可靠性。

如何选择 SORA API 提供商

在评估 SORA API 提供商时,请考虑以下因素:

标准检查内容为什么重要
吞吐量每秒请求限制防止流量高峰期间的限流
可靠性正常运行时间历史和冗余确保您的 dApp 保持在线
归档数据归档节点的可用性历史查询和索引器需要
WebSocket 支持实时事件订阅钱包和仪表板中的实时更新至关重要
定价模式免费层级、按需付费或固定费率符合您的预算和使用模式
支持文档和响应时间帮助您快速解决问题

OnFinality 是一个不错的选择,因为它提供免费层级、灵活的定价和全球节点网络。您可以从公共端点开始,随着项目增长升级到专用节点。

常见陷阱及如何避免

  • 使用错误的链 ID:如果您连接到错误的网络,交易将失败。始终从官方配置中仔细检查链 ID。
  • 忽略速率限制:公共端点有限制。如果超过限制,您将收到错误。使用提供更高限制或专用节点的提供商。
  • 不处理 WebSocket 重连:WebSocket 连接可能会断开。实现重连逻辑以保持实时更新。
  • 假设归档数据可用:并非所有提供商都提供归档节点。如果您需要历史状态,请确认提供商支持。

生产就绪检查清单

在启动您的 dApp 之前,请完成此检查清单:

  • 选择可靠的 RPC 提供商(考虑 OnFinality)
  • 设置 RPC 端点健康监控
  • 为失败的请求实现重试逻辑
  • 在需要实时数据的地方使用 WebSocket
  • 在扩展之前使用公共端点进行测试
  • 查看 RPC 定价 以估算成本

关键要点

  • SORA API 是 SORA 区块链的 JSON-RPC 接口,用于读取数据、提交交易和订阅事件。
  • 公共端点适合开发,但生产应用程序应使用托管或专用端点以获得可靠性和性能。
  • 根据吞吐量、归档数据、WebSocket 支持和定价选择提供商。
  • 始终验证链设置并处理常见陷阱,如速率限制和 WebSocket 重连。

常见问题

什么是 SORA API?

SORA API 是允许应用程序与 SORA 区块链交互的 JSON-RPC 端点集合。它包括查询链状态、提交交易和订阅事件的方法。

如何获取 SORA RPC 端点?

您可以使用 SORA 网络页面 上的公共端点,或注册像 OnFinality 这样的托管提供商以获得专用端点。

OnFinality 支持 SORA 吗?

是的,OnFinality 支持 SORA。您可以在 支持的网络页面 上找到该网络,并使用免费 API 密钥开始使用。

公共和专用 SORA 端点有什么区别?

公共端点是共享的,可能有速率限制。专用端点对您的项目是私有的,提供更高的吞吐量和更一致的性能。

我可以将 WebSocket 与 SORA API 一起使用吗?

是的,SORA 支持 WebSocket 连接以获取实时数据。使用您的 RPC 提供商提供的 WebSocket 端点。

使用 SORA API 需要多少费用?

费用因提供商而异。OnFinality 提供免费层级和透明的 定价,随您的使用量扩展。

RPC 知识库

相关 RPC 内容

网络 RPCSORA

SORA区块链和SORA网络:开发者应该了解什么?

SORA是一个基于Substrate的区块链网络,旨在创建一个主权经济系统,使用XOR代币和代币绑定曲线。它为Polkaswap提供动力,并支持民主治理和跨链互操作性。本文解释了什么是SORA,如何通过RPC连接到它,以及为生产应用选择基础设施时需要考虑的事项。...

网络 RPCBNB Chain

BNB智能链RPC端点:链设置、配置与调试

了解如何使用正确的RPC端点、链设置和JSON-RPC方法连接到BNB智能链(BSC)。本参考涵盖公共端点与托管端点、常见故障模式,以及如何为生产工作负载选择基础设施。...

RPC 提供商选择Arbitrum

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

Arbitrum RPC端点是dApp、钱包和索引器与Arbitrum One、Nova或测试网通信的网关。本文涵盖链设置、公共与私有端点、排序器行为以及为生产环境选择可靠RPC提供商的标准。...

网络 RPCAbstract

What is an Abstract RPC and how do I start using it?

Abstract is an Ethereum Layer 2 chain that uses zero-knowledge proofs. To connect, you need an Abstract RPC endpoint, chain ID, and the native token a...

RPC 提供商选择Solana

哪些 Solana RPC 提供商提供最佳的速率限制和用量层级?

速率限制和用量层级决定了在开始限流之前,您可以向 Solana RPC 端点发送多少每秒请求数(RPS)或计算单元。最佳选择取决于您的工作负载:轻量级 dApp 可以使用共享公共端点,而高频交易机器人、索引器和生产应用通常需要专用节点或具有可预测吞吐量的付费层级。 本文解释了 Solana RPC ...

RPC 提供商选择Celo

如何检查 Celo 的可用性,这对你的 dApp 意味着什么?

Celo 的可用性涵盖网络健康状况和你的 dApp 所依赖的 RPC 端点。本文解释了如何监控 Celo 主网状态、评估 RPC 提供商的可靠性,并在你的基础设施中构建弹性。...

永远不用担心基础设施

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

开始