socketio 使用回调提示 create_client.<locals>.test() 缺少 1 个必需的位置参数:'ack'

socketio use callback tips create_client.<locals>.test() missing 1 required positional argument: 'ack'

服务器代码:

  def test_call_back(text):
         print(text)
  sio.emit('test', 'test call back', callback=test_call_back)

客户端代码:

@sio.on('test')
def test(data,ack):
    print(data)
    ack()

运行错误提示:

create_client.<locals>.test() missing 1 required positional argument: 'ack'

我应该如何使用回调?

您似乎在使用 JavaScript 客户端文档并将其应用于 Python 客户端。 Python 客户端不是克隆版,因此请改用 Python 文档。对于回调:https://python-socketio.readthedocs.io/en/latest/client.html#event-callbacks.

示例确认 returns 两个值到另一边:

@sio.event
def my_event(sid, data):
    # handle the message
    return "OK", 123