Java SBE 示例应用是一个参考实现,演示如何在 JVM 环境中解码使用简单二进制编码(SBE)格式的 Binance API 响应。
它从 STDIN 读取 SBE 编码的数据载荷,或直接从 API 接口获取数据,并将人类可读的 YAML 表示输出至 STDOUT。可用于检查、调试和验证 Binance API 返回的 SBE 响应。
如需查看源代码、更新说明及示例,请访问 GitHub 上的 binance-sbe-java-sample-app 仓库。
支持的环境
- Java 11 或更高版本
- Linux
- macOS
本示例应用仅供本地运行和检查使用。
它不是一个生产就绪的 SDK。
示例演示内容
本应用专注于解码 SBE 编码的 API 响应,而非发送或管理请求本身。
它演示了如何:
- 解码 SBE 编码的 API 响应
- 将二进制 SBE 载荷转换为人类可读的 YAML
- 将 REST 或 WebSocket API 的 SBE 响应通过管道传入 Java 解码器
- 在基于 JVM 的项目中复用已生成的 SBE 解码器类
典型使用场景
- 检查和验证 SBE 响应
- 调试使用 SBE 的集成方案
- 学习如何在 Java 中解码 Binance SBE 模式
- 围绕基于 SBE 的 API 构建内部工具
- 验证 SBE 输出的身份验证和请求签名工作流
快速开始
克隆仓库:
Code
使用 Maven 构建项目:
Code
生成可运行的 JAR 文件:
Code
使用示例应用
该应用解码 SBE 载荷并将解码结果写入 STDOUT。
示例:通过 STDIN 解码 SBE REST 响应
Code
示例:解码 SBE WebSocket 响应
您可以通过辅助脚本或工具将 WebSocket 原始消息转发后,通过管道传入应用进行解码:
Code
运行 websocket_send.py 需要 Python 环境中安装 websocket-client 包。
示例:在应用内直接获取并解码
示例应用也支持直接获取 SBE 编码响应并进行解码:
Code
身份验证
向需要身份验证的接口请求 SBE 响应时,适用标准的 Binance 身份验证方式。
仓库中的示例演示了以下身份验证方式的用法:
- 基于
HMAC的身份验证 - 基于
RSA的身份验证 - 基于
Ed25519的身份验证
示例应用本身不执行请求签名——它仅负责解码 SBE 响应。
SBE 解码器
仓库包含使用 Simple Binary Encoding (SBE) 从 Binance SBE 模式文件生成的 Java 解码器类。
这些解码器可直接在您自己的 Java 或基于 JVM 的项目中复用,或针对自定义 SBE 流水线进行适配。如有需要,可按照仓库中的说明从最新模式文件重新生成解码器。
注意事项与最佳实践
- 本项目旨在作为参考实现和调试工具使用
- 请始终对照官方 API 文档验证解码后的字段
- 仅在需要二进制传输效率或低延迟时才考虑使用 SBE
- 对于通用集成场景,REST 或 WebSocket API 可能更易于使用
- 在测试已认证接口时,请使用测试网环境
此页面是否有帮助?
Last modified on