Flask-SocketIO在Werkzeug下运行如何使服务器在eventlet上运行?

时间:2020-01-15 18:35:57

标签: python flask socket.io eventlet

我在虚拟环境venv上的Win10上运行我的应用程序test.py

我已经安装了eventlet

我的代码是:

#include <sys/types.h>
#include <sys/socket.h>

ssize_t mysend(int fd, void * buff, size_t len, int flags)
{

#if WANT_PARTIAL_SEND
len = 1 + urand(len -1);
#endif

return send(fd, buff, len, flags);
}

当我运行:“烧瓶运行”时,我得到以下结果

from flask import Flask, render_template
from flask_socketio import SocketIO, emit

app = Flask(__name__)
app.config['SECRET_KEY'] = 'include_help!'
socketio = SocketIO(app)

@app.route('/')
def output():    
    return render_template('part.html')

@socketio.on('connect')
def app_connect():
    print('Client connected');
    emit('my_event', {'number': "12345678"})


if __name__ == '__main__':
        socketio.run(app)

如果我运行“ python test.py”,我将得到:

(vfern) C:\Users\ps\Python\fernb>flask run
 * Serving Flask app "test.py"
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off
[2020-01-15 18:40:30,941] WARNING in __init__: Flask-SocketIO is Running under Werkzeug, WebSocket is not available.

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

与此同时,我发现当我的虚拟环境中只有一个foo.py文件时,命令“ python test.py”有效并且socketio已建立。 谁能解释一下?