Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 连接flask socketio时,加载html源文件时出错_Python_Flask Socketio_Eventlet - Fatal编程技术网

Python 连接flask socketio时,加载html源文件时出错

Python 连接flask socketio时,加载html源文件时出错,python,flask-socketio,eventlet,Python,Flask Socketio,Eventlet,我正在使用socket.iojs(客户端)并连接到flask socketio(服务器)。 连接发生了,但是在HTML中加载源文件时,python中出现了一个错误。因此,它尝试先加载源文件,然后进行套接字连接: window.addEventListener('load', function(){ //Socket initial connection var socket = io('http://'+ document.domain + ':' + location.po

我正在使用socket.iojs(客户端)并连接到flask socketio(服务器)。 连接发生了,但是在HTML中加载源文件时,python中出现了一个错误。因此,它尝试先加载源文件,然后进行套接字连接:

  window.addEventListener('load', function(){
    //Socket initial connection
    var socket = io('http://'+ document.domain + ':' + location.port);  
  })
但是,我在python中仍然会遇到以下错误:

127.0.0.1 - - [16/Apr/2018 12:47:16] "GET 
/static/video/video.mp4 HTTP/1.1" 200 1835327 0.771649
Traceback (most recent call last):
File "C:\Users\Dave\AppData\Local\Programs\Python\Python36\lib\site-packages\eventlet\hubs\selects.py", line 55, in wait
listeners.get(fileno, noop).cb(fileno)
File "C:\Users\Dave\AppData\Local\Programs\Python\Python36\lib\site-packages\eventlet\greenthread.py", line 218, in main
result = function(*args, **kwargs)
File "C:\Users\Dave\AppData\Local\Programs\Python\Python36\lib\site-packages\eventlet\wsgi.py", line 781, in process_request
proto.__init__(conn_state, self)
File "C:\Users\Dave\AppData\Local\Programs\Python\Python36\lib\site-packages\eventlet\wsgi.py", line 337, in __init__
self.finish()
File "C:\Users\Dave\AppData\Local\Programs\Python\Python36\lib\site-packages\eventlet\wsgi.py", line 695, in finish
BaseHTTPServer.BaseHTTPRequestHandler.finish(self)
File "C:\Users\Dave\AppData\Local\Programs\Python\Python36\lib\socketserver.py", line 760, in finish
self.wfile.close()
File "C:\Users\Dave\AppData\Local\Programs\Python\Python36\lib\socket.py", line 604, in write
return self._sock.send(b)
File "C:\Users\Dave\AppData\Local\Programs\Python\Python36\lib\site-packages\eventlet\greenio\base.py", line 394, in send
return self._send_loop(self.fd.send, data, flags)
File "C:\Users\Dave\AppData\Local\Programs\Python\Python36\lib\site-packages\eventlet\greenio\base.py", line 381, in _send_loop
return send_method(data, *args)
ConnectionAbortedError: [WinError 10053] An established connection was aborted by the software in your host machine
Removing descriptor: 1656
从痕迹上看,似乎涉及到了eventlet。在python程序的顶部,我有一个gevent:

from gevent import monkey
monkey.patch_all() #must be on top

我不确定是什么导致了这个问题。如何解决此错误?

您应该决定使用eventlet或gevent。我只使用gevent。似乎涉及到了eventlet。@如果您不想使用它,请从虚拟环境中卸载eventlet。