【问题标题】:Flask Restful and Flask SocketIO server run togetherFlask Restful 和 Flask SocketIO 服务器一起运行
【发布时间】:2017-09-09 17:17:20
【问题描述】:

我正在尝试同时使用 Flask Restful 和 Flask SocketIO。我已经制作了一个 Flask Restful 应用程序,但现在我想使用 Flask SocketIO 在客户端和我的服务器之间进行实时通信。

from flask import Flask
from flask_restful import Api
from flask_socketio import SocketIO

app = Flask(__name__)
api = Api(app)
socketio = SocketIO()

if __name__ == '__main__':
    socketio.run(app, port=5000, host='0.0.0.0')
    app.run(port=5000, host='0.0.0.0')

一旦我运行它,我就会得到

Traceback (most recent call last):
  File "app.py", line 10, in <module>
    socketio.run(app, port=5000, host='0.0.0.0')
  File "C:\Python27\lib\site-packages\flask_socketio\__init__.py", line 475, in run
    if self.server.eio.async_mode == 'threading':
AttributeError: 'NoneType' object has no attribute 'eio'

我是使用 Flask 编码的初学者。希望你能帮助我。谢谢。

【问题讨论】:

    标签: flask-restful flask-socketio


    【解决方案1】:

    Flask-Restful 不会改变您启动服务器的方式。你可以这样做:

    app = Flask(__name__)
    api = Api(app)
    socketio = SocketIO(app)
    
    if __name__ == '__main__':
        socketio.run(app, port=5000, host='0.0.0.0')
    

    您在问题中粘贴的代码有一个导致AttributeError 的错误,即您没有将app 实例传递给SocketIO 构造函数。

    【讨论】:

      猜你喜欢
      • 2013-04-02
      • 2021-08-24
      • 1970-01-01
      • 2016-04-19
      • 1970-01-01
      • 2021-03-25
      • 2018-01-19
      • 1970-01-01
      • 2023-02-20
      相关资源
      最近更新 更多