摘要
币安信标链是BNB Chain生态系统的质押和治理层,在2024年opBNB时代的整合中与BNB智能链合并之前,它与BNB智能链并行运行。其浏览器允许您检查验证者、委托和跨链活动。如今,大多数开发者通过BNB智能链RPC端点与BNB Chain生态系统交互。
本页解释了信标链浏览器展示了什么,为什么它对历史查询很重要,以及如何转向OnFinality为生产应用支持的BNB智能链RPC工作流程。您可以连接到公共端点进行测试,或为更重的工作负载运行专用节点基础设施。
币安信标链浏览器实际展示了什么
币安信标链是与BNB智能链(BSC)并行运行的权益证明共识层。它负责BNB Chain生态系统的质押、验证者注册、委托和治理。其浏览器是一个Web界面,您可以在其中查询:
- 验证者及其投票权 — 谁在出块以及每个验证者绑定了多少BNB。
- 委托 — 哪些地址将质押委托给哪些验证者,以及随之而来的奖励历史。
- 跨链事件 — 信标链与BNB智能链之间的转账和消息。
- 治理提案 — 链上投票及其结果。
如果您搜索“币安信标链浏览器”,您可能试图回答以下三个问题之一:我的质押奖励去了哪里,我应该委托给哪个验证者,或如何以编程方式提取这些数据。前两个是历史查询。第三个是RPC基础设施发挥作用的地方,也是当今对开发者仍然重要的部分。
决策指南:浏览器查询 vs. RPC查询
在花时间连接端点之前,先确定您实际需要什么。浏览器是供人类阅读页面的;RPC是供软件按需读取状态的。
| 您需要什么 | 最佳工具 | 为什么 |
|---|---|---|
| 读取验证者的委托历史 | 历史浏览器/归档数据 | 浏览器索引并格式化这些数据以供阅读 |
| 通过哈希确认交易状态 | BNB智能链浏览器或RPC | eth_getTransactionReceipt 返回原始结果 |
| 构建质押仪表板 | RPC + 索引器 | 您需要可编程、可重复的查询 |
| 监控验证者正常运行时间 | RPC + 监控 | 轮询端点比刷新网页更好 |
| 调试失败的合约调用 | 支持trace的RPC | 浏览器很少暴露完整的trace |
| 一次性余额检查 | 公共RPC端点 | 最快路径,无需设置 |
如果您的答案落在该表的下半部分,请继续阅读——本页其余部分是关于通过RPC查询BNB Chain数据,而不是点击浏览器。
为什么信标链浏览器不再是主要入口点
BNB Chain生态系统整合了其架构,信标链的角色被并入更广泛的BNB Chain堆栈。这意味着:
- 新的开发发生在BNB智能链上。 合约、代币和大多数dApp都在那里,RPC流量也流向那里。
- 质押数据仍然存在,但访问方式不同。 历史质押记录可能仍可通过归档和索引器获得,但它们不是大多数构建者的主要工作流程。
- 浏览器和RPC服务于不同的受众。 浏览器是只读UI。RPC端点是您的后端、钱包或机器人直接调用的可编程接口。
因此,实际问题不再是“我应该打开哪个信标链浏览器”——而是“我的应用应该与哪个BNB智能链端点通信”。
BNB智能链RPC设置一览
如果您正在从浏览器查询转向编程查询,以下是您需要的值。它们与OnFinality使用的BNB智能链主网配置相匹配。
| 设置 | 值 |
|---|---|
| 链名称 | BNB Smart Chain Mainnet |
| 链ID | 56 |
| 原生货币 | BNB(18位小数) |
| 区块浏览器 | https://bscscan.com |
| 公共RPC端点 | https://bnb.api.onfinality.io/public |
| 传输 | HTTP和WebSocket |
对于测试网工作,BNB Chain测试网使用链ID 97、tBNB原生代币、浏览器 https://testnet.bscscan.com 和公共端点 https://bnb-testnet.api.onfinality.io/public。您可以在[BNB Chain网络页面](/networks/bnb)和BNB Chain测试网页面上找到两者。
使用JSON-RPC查询BNB Chain数据
一旦您有了端点,浏览器的工作就变成了一组方法调用。以下是一个快速curl示例,用于获取最新区块号:
curl -X POST https://bnb.api.onfinality.io/public \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "eth_blockNumber",
"params": [],
"id": 1
}'
要检查您之前在浏览器中找到的交易,请使用哈希:
curl -X POST https://bnb.api.onfinality.io/public \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "eth_getTransactionReceipt",
"params": ["0xYOUR_TX_HASH"],
"id": 1
}'
在JavaScript中使用ethers,相同的查询如下所示:
import { JsonRpcProvider } from "ethers";
const provider = new JsonRpcProvider("https://bnb.api.onfinality.io/public");
async function checkTx(hash) {
const receipt = await provider.getTransactionReceipt(hash);
if (!receipt) {
console.log("Pending or unknown transaction");
return;
}
console.log("Status:", receipt.status === 1 ? "success" : "reverted");
console.log("Block:", receipt.blockNumber);
}
checkTx("0xYOUR_TX_HASH");
对于实时更新——如果您要用仪表板替换手动浏览器刷新,这很有用——通过WebSocket订阅:
const ws = new WebSocket("wss://bnb.api.onfinality.io/public");
ws.onopen = () => {
ws.send(JSON.stringify({
jsonrpc: "2.0",
id: 1,
method: "eth_subscribe",
params: ["newHeads"]
}));
};
ws.onmessage = (event) => {
const data = JSON.parse(event.data);
if (data.params?.result?.number) {
console.log("New block:", parseInt(data.params.result.number, 16));
}
};
WebSocket支持取决于您使用的端点和计划。在围绕它构建之前,请在BNB Chain网络页面上确认传输可用性。
公共端点何时足够——何时不够
公共RPC端点是用脚本替换浏览器查询的最快方式。它适用于:
- 原型设计和一次性查询。
- 低交易量的钱包或内部工具。
- 以适中的速率读取余额、区块和收据。
当您需要以下内容时,它就会成为瓶颈:
- 来自后端或机器人的高请求量。
- 用于历史状态的归档数据,例如旧区块的余额。
- 用于失败交易的trace和调试方法。
- 用于实时功能的一致的WebSocket订阅。
此时,选择在于管理自己的BNB节点或使用托管基础设施。运行自己的节点意味着处理同步、磁盘增长、升级和监控。托管RPC API或专用节点消除了这种运营负担,并为您团队提供了一个稳定的端点。OnFinality为BNB Chain提供RPC API访问和专用节点选项,因此您可以从共享端点开始,并随着流量增长转向专用容量。
从浏览器查询转向时常见的陷阱
浏览器隐藏了很多复杂性。当您切换到RPC时,有几件事会让人犯错:
- 假设每个端点都是归档节点。 在非归档节点上,旧区块的历史
eth_getBalance调用会失败。在依赖它之前,请检查归档支持。 - 忽略公共端点的速率限制。 一个猛击共享端点的脚本会被限流。如果您的量是真实的,请计划付费层或专用节点。
- 忘记链ID检查。 钱包和工具需要主网链ID 56和测试网链ID 97。混淆它们会将交易发送到错误的网络。
- 过早将收据视为最终。 交易可能被包含,然后被重组。在标记为已结算之前,等待几个确认。
- 硬编码一个端点。 如果您唯一的端点宕机,您的应用就会宕机。保留一个备用端点并监控两者。
生产就绪检查清单
如果您在实时产品中用RPC替换浏览器驱动的工作流程,请在启动前运行以下检查:
| 检查 | 需要确认什么 |
|---|---|
| 端点冗余 | 至少配置一个备用端点 |
| 归档访问 | 如果查询历史状态,请确认 |
| WebSocket计划 | 订阅在负载下测试,而不仅仅是本地 |
| 链ID防护 | 在配置中强制主网(56)与测试网(97) |
| 监控 | 对错误率和区块延迟设置警报 |
| 速率策略 | 将交易量映射到合适的计划,而不是公共端点 |
| 密钥管理 | API密钥存储在机密中,而不是客户端代码中 |
一个简单的监控探针可以及早发现大多数问题:
#!/bin/bash
# Poll block height and alert if it stalls
HEIGHT=$(curl -s -X POST https://bnb.api.onfinality.io/public \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' \
| grep -o '"result":"[^"]*"' | cut -d'"' -f4)
echo "Current block: $((HEIGHT))"
# Compare against a previous value and alert on stagnation
OnFinality适合在哪里
OnFinality为BNB Chain和许多其他网络运行RPC API端点和专用节点。对于从基于浏览器的工作流程转向的团队,这意味着您获得一个稳定的端点、在支持的地方提供归档和trace选项,以及在不更改应用程序代码的情况下从共享API扩展到专用基础设施的能力。您可以查看RPC定价以匹配您的工作负载计划,如果您还在BNB以外的链上构建,可以浏览支持的RPC网络。如果您仍在提供商之间做决定,RPC提供商选择指南会介绍评估标准。
关键要点
- 币安信标链浏览器是BNB Chain共识层上质押、验证者和治理数据的UI。
- BNB Chain开发现在集中在BNB智能链上,RPC端点是主要的编程接口。
- 链ID 56(主网)和97(测试网)是钱包和应用配置所需的值。
- 公共端点适合原型设计;生产工作负载通常需要归档访问、WebSocket支持和冗余。
- OnFinality为BNB Chain提供RPC API和专用节点基础设施,并提供可匹配您流量的计划。
常见问题
币安信标链浏览器仍然可用吗?
随着BNB Chain整合其架构,信标链的角色发生了变化。历史质押数据可能仍可通过归档和索引器访问,但新的开发目标是BNB智能链。对于当前数据,请使用BNB智能链浏览器或RPC端点。
浏览器和RPC端点有什么区别?
浏览器是供人类使用的只读网站。RPC端点是您的代码调用来读取状态、发送交易和订阅事件的可编程接口。浏览器适合一次性查询;RPC是您构建的基础。
BNB智能链应该使用哪个链ID?
BNB智能链主网使用链ID 56,BNB Chain测试网使用链ID 97。主网的原生货币是BNB,测试网是tBNB。
我可以通过RPC查询历史质押数据吗?
如果端点支持归档查询,某些历史状态是可用的,但质押特定数据可能需要索引器而不是标准JSON-RPC调用。在依赖它之前,请与您的提供商确认归档支持。
小项目需要专用节点吗?
不一定。公共或共享RPC端点通常足以满足低流量应用。当您需要一致的吞吐量、归档访问或与其他用户流量隔离时,再转向专用节点。
如果我的RPC端点失败,如何避免停机?
配置至少一个备用端点,监控错误率和区块延迟,并保持提供商的状态信息方便。应用层的冗余是最简单的保护。