问题引出
正常使用app = Flask(__name__)这个对象的run()方法运行的时候,控制台会输出Running on http://127.0.0.1:12345(IP地址和端口)和输出日志。如下图:
但是在使用socketio = SocketIO(app)这个对象的run()方法运行的时候,控制台没有输出上述信息。如下图:
原因
查找资料之后发现是因为刚开始使用flask_socketio的时候会报出警告WARNING in __init__: WebSocket transport not available. Install gevent-websocket for improved performance。
所以下载了gevent-websocket包,安装这个包的时候会顺带安装gevent包,gevent包导致项目运行后不输出IP地址和端口等信息。websocket包2017年就停止更新了,所以会导致一些新版本的flask出现兼容性问题。
解决方法
删掉gevent和gevent-websocket包,然后下载simple-websocket包代替那两个包。
这样再运行的时候就会输出IP地址和端口等信息了。