-
问题描述
将websocket的on_open()封装到一个类中,就会出现如题问题。
-
解决方案
问题出在websocket的
_callback
方法调用上。def _callback(self, callback, *args): if callback: try: if inspect.ismethod(callback): callback(*args) else: callback(self, *args)
默认是调用函数,然后传入参数。
当
on_open(self, ws)
是class内的方法时,会把self也当成一个参数传给_callback
,这样它就找不到想要的ws
,可以把ws设置为一个类的全局变量,不需要传入到on_open
中,直接从全局self.ws
调用。 -
References
on_open() missing 1 required positional argument: 'ws'
最新推荐文章于 2022-11-11 16:27:28 发布