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

什么是 TON 端点?如何选择?

摘要

TON 端点是 HTTP 和 JSON-RPC 桥接端点,允许链下应用程序读取区块链数据、查询智能合约并在 The Open Network (TON) 上提交交易。由于 TON 节点使用 ADNL 而非 HTTP 通信,因此 TON Center 的 API 或托管 RPC 提供商等端点是钱包、机器人和后端与网络交互的标准方式。

选择合适的 TON 端点意味着检查您需要主网还是测试网访问权限,在 TON Center API v2(基于 liteserver)和 v3(索引)之间做出决定,验证速率限制,并在生产环境之前测试端点。本指南涵盖了端点选项、示例请求和开发人员决策清单。

TON 端点是钱包、机器人和后端服务与 The Open Network 交互的标准方式。它们是读取区块链数据、查询智能合约和提交签名消息的 HTTP 或 JSON-RPC 桥接端点。由于 TON 节点使用 ADNL 而非 HTTP,端点层通常基于参考实现 ton-http-api 构建。

本页解释了什么是 TON 端点,它与 EVM RPC 端点有何不同,常见的主网和测试网端点选项有哪些,以及如何在依赖端点之前对其进行测试。

TON 端点决策清单

在您承诺使用 TON 端点之前,请完成此清单。只需几分钟,即可避免大多数集成问题。

  • 主网还是测试网? 使用测试网进行开发和暂存;将生产环境指向主网。
  • API 版本? 选择 v2 以直接访问 liteserver,或选择 v3 以满足对追踪、jettons 和 NFT 的索引查询需求。
  • 方法覆盖? 确认端点支持您的钱包或机器人所需的方法。
  • 身份验证? 了解您是否需要 API 密钥以及速率限制如何应用。
  • 流式传输? 如果您实时响应交易,请检查是否支持 SSE 或 WebSocket。
  • 冗余? 为提供商中断做好计划,并测试备用端点。
  • 成本模型? 将共享公共端点与 RPC 定价 和专用节点进行比较。

TON RPC 与 EVM RPC:为什么端点形状不同

许多开发人员带着以太坊的心智模型而来。他们期望 eth_blockNumbereth_calleth_getLogs 等方法。TON 与 EVM 不兼容。

TON 的核心组件是 TVM(TON 虚拟机),节点使用 ADNL 二进制协议进行通信。HTTP 端点是中间服务。它接收 HTTP 请求,使用 tonlib 与 liteserver 通信,并返回 JSON。您可以使用 TON Center 的公共服务,运行自己的 ton-http-api,或使用已部署 TON 基础设施的托管 RPC 提供商。

这种架构也解释了方法名称。最常见的方法是 getAddressInformationgetTransactionsrunGetMethodestimateFeesendBoc。没有 eth_ 方法,也没有 web3_clientVersion 调用。当有人说“TON 端点”时,他们通常指的是 HTTP API 地址,而不是以太坊意义上的 JSON-RPC 节点。

主网和测试网端点选项

对于快速入门,TON Center 是参考 API。其公共 v2 端点为:

网络基础 URLJSON-RPC 路径
主网https://toncenter.com/api/v2https://toncenter.com/api/v2/jsonRPC
测试网https://testnet.toncenter.com/api/v2https://testnet.toncenter.com/api/v2/jsonRPC

两者都是公共的且有限速。TON Center 还提供带有索引器的 v3 API,以及通过 SSE 和 WebSocket 的 Streaming API v2。

像 OnFinality 这样的托管提供商为您提供托管端点,因此您无需运行 TON 节点。查看 TON 网络页面 了解主网详细信息,查看 TON 测试网页面 了解暂存环境。您还可以查看完整的 支持的网络 列表。

如何测试 TON 端点

验证端点最快的方法是使用简单的 curl 请求。将 EQD... 替换为真实地址。

curl 'https://toncenter.com/api/v2/getAddressInformation?address=EQD...' -H 'Accept: application/json'

成功的响应如下所示:

{
  "ok": true,
  "result": {
    "@type": "raw.fullAccountState",
    "balance": "123456789",
    "state": "active"
  }
}

请求成功后,使用 runGetMethod 测试只读智能合约调用,然后在尝试广播交易之前测试 estimateFee

您最常使用的 TON API 方法

以下是您在钱包或机器人中最可能需要的方法:

  • getAddressInformation – 返回余额、状态、代码哈希和其他账户详细信息。
  • getTransactions – 返回地址的近期交易历史。
  • runGetMethod – 在智能合约上调用 get-method(只读,无费用)。
  • estimateFee – 估算外部消息的费用。
  • sendBoc – 向网络提交签名的外部消息(Bag of Cells)。
  • detectAddress – 在原始格式和用户友好格式之间规范化地址。
  • getTokenData – 读取 jetton(代币)元数据和余额。

如果您的用例需要丰富的历史查询,TON Center API v3 增加了对追踪、jettons 和 NFT 的索引访问。然而,典型的钱包可以使用 v2 和上述方法构建。

在公共、托管和专用 TON 端点之间选择

公共端点对原型很有吸引力。对于任何持续运行的内容,请检查超出速率限制时会发生什么。许多公共端点返回 429 响应,没有重试指导,这对于本地演示可能没问题,但对于服务来说有风险。

使用下表评估任何 TON 端点,包括您自己的自托管实例。

标准检查内容重要性
网络覆盖主网和测试网 URL避免将暂存代码指向生产数据。
API 版本v2 与 v3v2 直接查询 liteserver;v3 添加索引以支持更丰富的查询。
速率限制每秒请求数,基于 IP 或密钥公共端点可能在高峰期间限制您。
身份验证需要 API 密钥或令牌密钥允许按项目跟踪使用情况,并更安全地用于生产。
方法覆盖sendBocestimateFeerunGetMethod缺少方法会破坏钱包或机器人功能。
流式支持SSE 或 WebSocket 可用性实时更新和事件驱动服务需要。
历史数据归档和索引深度追踪、jettons 和旧交易可能需要索引器。
部署模型公共、托管共享或专用节点公共方便;专用基础设施提供更多控制。

常见的 TON 端点陷阱

即使您有了端点,TON 集成也会在几个方面让开发人员犯错。

  • 假设 EVM JSON-RPC。 不要向 TON 端点发送 eth_ 方法。请改用 TON 特定的方法。
  • 使用错误的地址格式。 TON 支持 base64 用户友好地址和原始 workchain:hex 地址。在查询之前使用 detectAddress 进行规范化。
  • 遇到速率限制。 429 响应意味着端点正在限制您。添加带退避的重试,并尽可能使用 API 密钥。
  • 混淆主网和测试网。 在主网上查询测试网地址将返回未初始化的账户状态或空数据。在配置中验证网络。
  • 忘记 sendBoc 需要签名的外部消息。 您必须构造并签名一个 Bag of Cells;不能简单地发送私钥或原始十六进制交易。
  • 使用 v2 进行深度历史查询。 getTransactions 只返回 liteserver 拥有的内容。对于交易历史、追踪或 NFT,请使用索引 API,例如 TON Center v3。
  • 忽略证明要求。 如果您需要无需信任的验证,HTTP API 可能不会返回证明包。在这种情况下,请使用 tonlib 连接到 liteserver,或使用提供证明的服务。

使用 OnFinality 的后续步骤

一旦您了解了端点形状,请在应用程序的开发环境中进行测试。对于生产环境,请决定共享公共端点是否足够,或者您是否需要更多控制。

OnFinality 提供 TON RPC API 访问,作为其 网络覆盖专用节点基础设施 的一部分,适用于需要私有端点的团队。在部署之前,请查看 TON 网络页面 获取当前端点信息,以及 TON 测试网页面 了解暂存环境。您还可以查看 RPC 定价 以了解共享和专用设置之间的权衡。

无论您选择哪个端点,请记住决策清单:在编写生产代码之前,验证网络、方法覆盖、速率限制和流式支持。

关键要点

  • TON 端点是到 TON liteserver 的 HTTP/JSON-RPC 桥。它使用 TON 特定的方法,而不是 EVM 方法。
  • TON Center API v2 是参考实现;v3 添加了索引查询以支持丰富的历史记录。
  • 在集成之前使用 curl 测试端点,并检查速率限制和身份验证。
  • 有意使用主网和测试网端点;混淆它们会导致令人困惑的错误。
  • 对于生产环境,请考虑使用 OnFinality 提供的托管或专用 TON 端点,而不是依赖公共免费端点。

常见问题解答

什么是 TON 端点?

TON 端点是 HTTP API 地址,允许应用程序读取 TON 数据、查询智能合约和发送交易,而无需直接使用 ADNL。

TON 与以太坊 JSON-RPC 兼容吗?

不。TON 使用 TVM 和 ADNL 协议。诸如 TON Center 之类的 HTTP API 公开了 getAddressInformationsendBoc 等方法,而不是 eth_ 方法。

TON API v2 和 v3 有什么区别?

v2 通过 ton-http-api 直接查询 liteserver。v3 使用索引数据库来支持对交易、追踪、jettons 和 NFT 的更丰富查询。

如何选择 TON 端点提供商?

检查主网/测试网覆盖范围、方法支持、速率限制、身份验证、流式传输能力,以及您是否需要索引历史或专用节点。在 RPC 定价 上比较计划。

RPC 知识库

相关 RPC 内容

网络 RPCKava

Kava RPC:链设置、端点和调试

Kava 是一个基于 Cosmos 的 Layer 1 区块链,结合了 Cosmos 的速度和以太坊虚拟机(EVM)的兼容性。本页介绍 Kava RPC 端点、链设置以及开发者在 Kava 上构建时常见的故障排除步骤。...

网络 RPCMantle

Mantle RPC:链设置、端点和如何选择提供商

Mantle 是一个兼容 EVM 的第 2 层 rollup,采用模块化架构,利用以太坊保证安全性,并使用自己的数据可用性层。要连接钱包和 dApp,您需要正确的 Mantle RPC 端点、链 ID 和网络设置。本页涵盖必要的链设置、公共和私有端点选项,以及如何为生产工作负载评估 RPC 提供商。...

网络 RPCBittensor

什么是 Bittensor RPC,如何连接?

# 什么是 Bittensor RPC,如何连接? Bittensor 是一个去中心化的人工智能网络,构建在基于 Substrate 的第一层链(Subtensor)之上,并可选配 Frontier EVM 运行时。要与网络交互——无论是查询子网状态、提交推理请求,还是部署智能合约——你都需要一个 ...

RPC 提供商选择Base

哪些 RPC 提供商支持 Base RPC?

Base 是一个基于 OP Stack 构建的以太坊 Layer 2 网络,许多 RPC 提供商都为其提供端点。本文介绍了在选择 Base RPC 提供商时需要注意的事项,包括端点类型、可靠性和定价,并列出了值得考虑的几家主要提供商。...

RPC 提供商选择Polygon

专用Polygon节点:生产环境dApp的基础设施考量

了解何时需要为生产环境dApp使用专用Polygon节点,它与共享端点的对比,以及评估提供商时应考虑哪些标准。本文涵盖架构权衡、成本因素和运营考量。...

网络 RPCSolana

最新的 Solana RPC 更新有哪些,它们如何影响您的 dApp?

Solana RPC 更新包括新的 JSON-RPC 方法、现有端点的更改,以及公共和托管基础设施处理负载的方式的变化。及时了解这些更新很重要,因为 Solana 的高吞吐量和频繁的功能发布可能会改变您查询账户、提交交易和订阅实时数据的方式。 本文涵盖最新的 Solana RPC 更改、如何在 de...

永远不用担心基础设施

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

开始