摘要
Frequency 是一个专为去中心化社交应用设计的 Polkadot 平行链,使用 DSNP 让用户掌控自己的身份和数据。本文介绍如何通过 RPC 连接到 Frequency 网络,涵盖链设置、常用方法以及如何为你的 dApp 选择合适的基础设施。
快速推荐:如何连接 Frequency RPC
如果你正在 Frequency 上构建去中心化社交应用,你需要一个可靠的 RPC 端点来与链交互。最快的方式是使用像 OnFinality 这样的托管 RPC 服务,它为 Frequency 平行链提供公共和私有端点。对于生产环境,考虑使用专用节点以确保稳定的性能并避免速率限制。
- 用于测试和开发: 使用 OnFinality 提供的公共 RPC 端点。
- 用于生产 dApp: 评估专用节点或私有 RPC 端点,以处理更高的流量并保持可用性。
- 用于高频查询: 使用 WebSocket 订阅获取实时更新,而不是轮询。
什么是 Frequency 以及为什么使用它的 RPC?
Frequency 是一个专为去中心化社交网络构建的 Polkadot 平行链。它使用去中心化社交网络协议(DSNP)实现用户控制的身份和数据跨应用可移植性。在 Frequency 上构建社交 dApp 的开发人员需要通过 RPC 调用与链交互,以读取状态、提交交易和订阅事件。
Frequency RPC 允许你查询链数据、发送外部交易(extrinsics)并监听更新。了解可用的方法以及如何构造请求对于构建高效应用至关重要。
链设置和端点参考
在连接之前,你需要正确的链配置。以下是 Frequency 平行链的关键细节:
| 参数 | 值 |
|---|---|
| 网络名称 | Frequency 平行链 |
| 链 ID | 2091 |
| RPC 端点(HTTPS) | https://rpc.frequency-polkadot.onfinality.io |
| WebSocket 端点 | wss://rpc.frequency-polkadot.onfinality.io |
| 浏览器 | https://frequency.subscan.io |
这些设置用于钱包配置和 dApp 开发。请始终从 Frequency 网络页面 验证最新端点,因为它们可能会更改。
发起你的第一个 RPC 调用
要测试你的连接,你可以使用一个简单的 curl 命令获取最新区块号:
curl -H "Content-Type: application/json" \
-d '{"id":1, "jsonrpc":"2.0", "method":"chain_getHeader", "params":[]}' \
https://rpc.frequency-polkadot.onfinality.io
响应将包含区块号、哈希和父哈希。这确认了你的端点正常工作。
Frequency 的常用 RPC 方法
Frequency 支持标准的 Substrate RPC 方法,以及一些特定于其 pallet 的方法。以下是最有用的方法:
chain_getBlock– 按哈希或编号获取区块。chain_getFinalizedHead– 获取最新的最终确定区块哈希。state_getStorage– 读取存储值。system_accountNextIndex– 获取账户的下一个 nonce。author_submitExtrinsic– 提交已签名的交易。
对于社交功能,你可能会使用与 DSNP 相关的方法,例如 msa 和 messages pallet。请查阅 Frequency 文档获取完整列表。
使用 WebSocket 进行实时更新
对于需要实时更新的应用(例如新消息或账户变更),WebSocket 订阅比轮询更高效。以下是使用 wss 端点的示例:
const WebSocket = require('ws');
const ws = new WebSocket('wss://rpc.frequency-polkadot.onfinality.io');
ws.on('open', function open() {
ws.send(JSON.stringify({
id: 1,
jsonrpc: '2.0',
method: 'chain_subscribeNewHeads',
params: []
}));
});
ws.on('message', function incoming(data) {
console.log(data.toString());
});
此订阅将在新区块头产生时推送它们。
选择合适的 RPC 基础设施
为 Frequency 选择 RPC 提供商时,请考虑以下因素:
- 公共与私有: 公共端点适合开发,但可能有速率限制。私有端点提供更高的吞吐量和可靠性。
- 专用节点: 对于生产环境,专用节点让你完全控制资源并避免邻居干扰。
- 归档数据: 如果你需要历史状态,请确保你的提供商提供归档节点。
- 地理分布: 选择具有全球覆盖的提供商以减少延迟。
OnFinality 为 Frequency 提供公共和专用节点选项。你可以在 RPC 定价页面 比较计划,并在 网络页面 查看所有支持的网络。
常见问题排查
- 连接超时: 如果遇到超时,请检查你的网络防火墙并确保端点可达。尝试使用不同的传输方式(HTTPS 与 WSS)。
- 速率限制: 公共端点可能会限制请求。如果达到限制,请考虑升级到私有端点或专用节点。
- Nonce 错误: 提交交易时,请确保使用正确的 nonce。使用
system_accountNextIndex获取下一个 nonce。 - 找不到区块: 如果你请求的区块不存在,请验证区块编号或哈希。
关键要点
- Frequency 是用于去中心化社交应用的 Polkadot 平行链,使用 DSNP。
- 使用官方 RPC 端点进行测试,并考虑为生产环境使用专用节点。
- WebSocket 订阅非常适合实时更新。
- 始终从网络页面验证链设置。
- 选择在性能、可靠性和成本之间取得适当平衡的提供商。
常见问题解答
Frequency RPC 端点是什么?
公共 HTTPS 端点是 https://rpc.frequency-polkadot.onfinality.io。对于 WebSocket,使用 wss://rpc.frequency-polkadot.onfinality.io。
Frequency 是独立的区块链吗?
不是,Frequency 是 Polkadot 上的平行链,受益于共享安全性和互操作性。
我可以免费使用 Frequency RPC 吗?
可以,公共端点可用于开发和测试。对于生产环境,你可能需要付费计划。
如何获得专用的 Frequency 节点?
你可以通过 OnFinality 的 专用节点服务 请求专用节点。
什么是 DSNP?
DSNP(去中心化社交网络协议)是一种用于社交网络的协议,让用户控制自己的身份和数据,在 Frequency 上实现。