Baller-Tech OCR WebSocket API 开发指南

需积分: 0 1 下载量 98 浏览量 更新于2024-08-05 收藏 262KB PDF 举报
"该文档是关于图像识别(OCR)服务的WebSocket API开发指南,主要涉及如何使用WebSocket协议进行鉴权和交互,支持多种图像格式,适用于多种开发语言。" 在图像识别(OCR)领域,WebSocket API 提供了一种轻量级、跨平台且跨开发语言的解决方案。该API允许开发者通过WebSocket协议与服务器进行实时通信,实现图片中的文字转换为可编程文字。以下是关键知识点的详细说明: 1. **WebSocket握手与鉴权**: - 在建立WebSocket连接时,客户端需使用hmac-sha256算法计算签名,并将`host`、`date`以及鉴权信息Base64编码后的数据作为参数发送给服务器。这确保了请求的安全性。 - `date`参数必须是GMT+0时区的符合RFC1123格式的日期和时间,服务端允许的日期偏差不超过300秒。握手请求的URL应包含这些参数。 2. **WebSocket连接**: - 握手成功后,客户端可以通过WebSocket连接向服务器上传图像数据,并接收处理结果。 - 一旦接收到服务器返回的结果结束标记,客户端应断开连接。 3. **请求地址与字符编码**: - WebSocket请求地址为`ws://api.baller-tech.com/v1/service/ws/v1/ocr`,使用UTF-8字符编码。 - WebSocket版本遵循RFC6455标准,即版本13。 4. **响应格式与图像格式**: - 所有的响应都是JSON格式,便于解析和处理。 - 支持的图像格式包括:jpg、jpeg、bmp、png、gif、tif、tiff以及pdf。图像大小限制在4M以内。 5. **接口调用流程**: - 调用流程包括三个步骤:计算签名并发送WebSocket握手请求,通过连接上传数据,接收结果并断开连接。 6. **参数说明**: - `task_id`:标识每次任务,用于问题排查。 - `message`:若鉴权失败,将提供原因。 - `business`:非必需的业务参数,仅在握手成功后的首帧上传。 - `data`:必需的数据流参数,握手成功后所有帧中都需上传,包含图像数据。 7. **鉴权参数`authorization`**: - 鉴权信息的正确性是连接成功的关键,需要按照指定格式提供。 通过这个WebSocket API,开发者可以轻松地集成OCR功能到他们的应用中,无论应用使用哪种开发语言,只要支持WebSocket即可。这种实时通信的能力使得OCR处理能快速响应,提高用户体验。在实际开发中,开发者需要按照上述规则构建请求,并妥善处理服务器的响应,以确保功能的正常运行。