TypeError:wrap_socket()得到了一个意外的关键字参数'policy_listener'| GEVENT-socketio

时间:2013-11-26 08:17:11

标签: python gevent gevent-socketio

我是python的新手,我正试图试试没有运气的gevent-socketio示例。 我每次访问html文件时都会收到此错误。在这种情况下,我发布了live_cpu_graph报告的错误,但chat有同样的问题。

感谢您的帮助

Listening on port http://0.0.0.0:8080 and on port 10843 (flash policy server)
DEPRECATION WARNING: use `namespace` instead of `resource`
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/gevent/greenlet.py", line 390, in run
    result = self._run(*self.args, **self.kwargs)
  File "/usr/local/lib/python2.7/dist-packages/gevent/server.py", line 159, in wrap_socket_and_handle
    ssl_socket = self.wrap_socket(client_socket, **self.ssl_args)
TypeError: wrap_socket() got an unexpected keyword argument 'policy_listener'
<Greenlet at 0x1cceb90: <bound method SocketIOServer.wrap_socket_and_handle of <SocketIOServer at 0x1dc0710 fileno=3 address=0.0.0.0:8080>>(<socket at 0x1dc08d0 fileno=10 sock=127.0.0.1:8080, ('127.0.0.1', 45823))> failed with TypeError

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/gevent/greenlet.py", line 390, in run
    result = self._run(*self.args, **self.kwargs)
  File "/usr/local/lib/python2.7/dist-packages/gevent/server.py", line 159, in wrap_socket_and_handle
    ssl_socket = self.wrap_socket(client_socket, **self.ssl_args)
TypeError: wrap_socket() got an unexpected keyword argument 'policy_listener'
<Greenlet at 0x1cceb90: <bound method SocketIOServer.wrap_socket_and_handle of <SocketIOServer at 0x1dc0710 fileno=3 address=0.0.0.0:8080>>(<socket at 0x1dc08d0 fileno=10 sock=127.0.0.1:8080, ('127.0.0.1', 45824))> failed with TypeError

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/gevent/greenlet.py", line 390, in run
    result = self._run(*self.args, **self.kwargs)
  File "/usr/local/lib/python2.7/dist-packages/gevent/server.py", line 159, in wrap_socket_and_handle
    ssl_socket = self.wrap_socket(client_socket, **self.ssl_args)
TypeError: wrap_socket() got an unexpected keyword argument 'policy_listener'
<Greenlet at 0x1cceb90: <bound method SocketIOServer.wrap_socket_and_handle of <SocketIOServer at 0x1dc0710 fileno=3 address=0.0.0.0:8080>>(<socket at 0x1dc08d0 fileno=10 sock=127.0.0.1:8080, ('127.0.0.1', 45826))> failed with TypeError

1 个答案:

答案 0 :(得分:1)

我想我已经解决了这个问题:

if __name__ == '__main__':
    print 'Listening on port http://0.0.0.0:8080 and on port 10843 (flash policy server)'
    SocketIOServer(('0.0.0.0', 8080), Application(),
        resource="socket.io", policy_server=True,
        policy_listener=('0.0.0.0', 10843)).serve_forever(

用这个:

if __name__ == '__main__':
    print 'Listening on port http://0.0.0.0:8080'
    SocketIOServer(('0.0.0.0', 8080), Application(),
        resource="socket.io").serve_forever(

但我真的不知道为什么。我希望有人可以解释一下。 感谢。