摘要
BNB智能链的官方公共RPC URL是 https://bnb.api.onfinality.io/public。该端点允许您查询BNB智能链主网,而无需运行自己的节点。对于生产环境,您应评估提供更高速率限制、归档数据和WebSocket支持的管理型和专用RPC选项。
快速回答:BNB智能链RPC URL
BNB智能链(主网)的公共RPC URL是:
https://bnb.api.onfinality.io/public
该端点由OnFinality运营,允许您向BNB智能链网络发送JSON-RPC请求,而无需运行自己的节点。它支持HTTP和WebSocket传输。
对于BNB智能链测试网,公共RPC URL是:
https://bnb-testnet.api.onfinality.io/public
在部署到主网之前,请使用测试网端点进行开发和测试。
链设置一览
在配置钱包或dApp时,您需要以下BNB智能链主网的网络详细信息:
| 设置 | 值 |
|---|---|
| 网络名称 | BNB智能链主网 |
| RPC URL | https://bnb.api.onfinality.io/public |
| 链ID | 56 |
| 货币符号 | BNB |
| 区块浏览器 | https://bscscan.com |
对于测试网,请使用:
| 设置 | 值 |
|---|---|
| 网络名称 | BNB智能链测试网 |
| RPC URL | https://bnb-testnet.api.onfinality.io/public |
| 链ID | 97 |
| 货币符号 | tBNB |
| 区块浏览器 | https://testnet.bscscan.com |
如何连接到BNB智能链
使用MetaMask
- 打开MetaMask并点击顶部的网络选择器。
- 点击添加网络。
- 输入上表中的主网设置。
- 保存并切换到新网络。
使用ethers.js
const { ethers } = require("ethers");
const provider = new ethers.JsonRpcProvider("https://bnb.api.onfinality.io/public");
async function getBlockNumber() {
const blockNumber = await provider.getBlockNumber();
console.log("当前区块号:", blockNumber);
}
getBlockNumber();
使用viem
import { createPublicClient, http } from "viem";
import { bsc } from "viem/chains";
const client = createPublicClient({
chain: bsc,
transport: http("https://bnb.api.onfinality.io/public"),
});
const blockNumber = await client.getBlockNumber();
console.log("当前区块号:", blockNumber);
公共、管理型与专用RPC
公共RPC URL是一个共享端点,免费使用,但有速率限制,不适合高流量的生产应用。对于生产环境,您有两个主要选项:
- 管理型RPC:OnFinality提供具有更高速率限制、归档数据和WebSocket支持的管理型RPC端点。您按请求付费,并可根据需要扩展。
- 专用节点:专用节点为您提供对BNB智能链节点的独占访问,具有明确的速率限制和对节点配置的完全控制。这非常适合高吞吐量工作负载。
决策指南:您应该选择哪个选项?
| 工作负载 | 推荐选项 |
|---|---|
| 快速原型、黑客松 | 公共RPC |
| 中等流量的生产dApp | 管理型RPC |
| 高频交易、索引、分析 | 专用节点 |
| 需要归档数据或trace方法 | 支持归档的管理型RPC |
如果您不确定,请从公共RPC开始进行开发,然后随着流量增长迁移到管理型或专用解决方案。OnFinality为BNB智能链提供管理型RPC和专用节点。有关详细信息,请参阅RPC定价。
BNB智能链的常见RPC方法
BNB智能链与以太坊兼容,因此您可以使用标准的以太坊JSON-RPC方法。以下是一些常见方法:
eth_blockNumber– 获取最新区块号eth_getBalance– 获取地址的余额eth_call– 执行只读合约调用eth_getLogs– 获取合约或主题的日志eth_sendRawTransaction– 广播已签名的交易
使用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}'
连接问题排查
如果您无法连接到RPC URL,请检查以下内容:
- 网络配置:确保链ID和RPC URL正确。
- 速率限制:公共端点有速率限制。如果您收到
429 Too Many Requests,请等待并重试,或使用管理型端点。 - CORS:如果您从浏览器调用,端点必须支持CORS。OnFinality公共端点支持。
- WebSocket:对于实时更新,请使用WebSocket URL:
wss://bnb.api.onfinality.io/public/ws(请查看BNB Chain网络页面上的确切URL)。
关键要点
- BNB智能链主网的公共RPC URL是
https://bnb.api.onfinality.io/public。 - 测试网RPC URL是
https://bnb-testnet.api.onfinality.io/public。 - 使用正确的链ID:主网为56,测试网为97。
- 对于生产环境,请考虑使用管理型RPC或专用节点以避免速率限制并获得更好的性能。
- OnFinality支持BNB智能链的HTTP和WebSocket。
常见问题解答
什么是币安智能链的RPC URL?
公共RPC URL是https://bnb.api.onfinality.io/public。对于测试网,请使用https://bnb-testnet.api.onfinality.io/public。
我可以将公共RPC用于生产环境吗?
公共RPC有速率限制,不建议用于生产环境。请使用管理型RPC或专用节点以获得可靠的性能。
如何将BNB智能链添加到MetaMask?
使用上表中的网络设置:RPC URL、链ID 56、符号BNB和浏览器https://bscscan.com。
OnFinality是否支持BNB智能链的WebSocket?
是的,OnFinality支持BNB智能链的WebSocket。请查看网络页面获取确切的WebSocket URL。
BNB智能链和BNB Chain有什么区别?
BNB智能链是与BNB信标链并行运行的EVM兼容区块链。本文中的RPC URL用于BNB智能链主网。
有关支持网络的更多信息,请参阅支持的RPC网络。