跳转到内容

接收事件数据

事件数据通过 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=0
ERROR=reqId=98702;code=10276;msg=不允许新闻推送。

业务代码要同时处理 error()。如果只写 wshEventData(),没有权限时用户界面会一直等待结果。

  • 原始 JSON 保留到日志,便于排查。
  • 用户界面展示事件名称、日期、合约、来源和过滤条件。
  • 如果返回空事件列表,要先确认没有 10276、连接错误或过滤器过窄,再判断“没有事件”。