接收事件数据
事件数据通过 wshEventData() 回调返回。有权限时,dataJson 是 WSH 返回的事件 JSON 字符串。
import json
def wshEventData(self, reqId: int, dataJson: str): """接收 WSH 事件数据。""" events = json.loads(dataJson) print("请求编号:", reqId) print("事件数据:", events)| 字段 | 类型 | 中文意思 |
|---|---|---|
reqId | 整数 | 对应 reqWshEventData(reqId, request) 的请求编号。 |
dataJson | 字符串 | WSH 事件数据 JSON。 |
具体 JSON 字段取决于事件类型和账户权限。程序应保存原始 JSON,并在展示层按事件类型逐步解释字段。
账户没有 WSH 权限时,可能不会进入 wshEventData(),而是返回:
EVENT_ROWS=0ERROR=reqId=98702;code=10276;msg=不允许新闻推送。业务代码要同时处理 error()。如果只写 wshEventData(),没有权限时用户界面会一直等待结果。
- 原始 JSON 保留到日志,便于排查。
- 用户界面展示事件名称、日期、合约、来源和过滤条件。
- 如果返回空事件列表,要先确认没有
10276、连接错误或过滤器过窄,再判断“没有事件”。