Javascript Python Flask SocketIO basic应用程序无法工作-无法从“XMLHttpRequest”读取“responseText”属性

Javascript Python Flask SocketIO basic应用程序无法工作-无法从“XMLHttpRequest”读取“responseText”属性,javascript,python,flask,socket.io,Javascript,Python,Flask,Socket.io,我有一个非常基本的Flask+SocketIO应用程序,但当我尝试从客户端发出时,它并没有被接收到。我的代码: from flask import Flask from flask_socketio import SocketIO #Flask setup app = Flask(__name__) socketio = SocketIO(app) @app.route('/') ... @socketio.on('test') def test(): print('receive

我有一个非常基本的Flask+SocketIO应用程序,但当我尝试从客户端发出时,它并没有被接收到。我的代码:

from flask import Flask
from flask_socketio import SocketIO

#Flask setup
app = Flask(__name__)
socketio = SocketIO(app)

@app.route('/')
...

@socketio.on('test')
def test():
    print('received')

@socketio.on('connect')
def connect():
    print('connected!')

def start_flask():
    socketio.run(app, host='127.0.0.1', port=12345, debug=True)

if __name__ == '__main__':
    start_flask()

JS:

刷新时-我从Python连接,但不是从client/JS控制台连接。 我只是在那里发现了这个错误: 当我尝试调用test函数时,它在JS控制台中显示“test”,但在Python中不显示“received”。
谢谢。

当您在其他端口使用flask的API时,您需要导入CORS以处理安全问题,因此请按照步骤安装flask\u CORS lib:

pip3 install Flask-Cors
然后在代码中:

from flask_cors import CORS
app = Flask(__name__)
socketio = SocketIO(app)
CORS(app)

当您在不同的端口使用来自flask的API时,您需要导入CORS来处理安全性问题,因此请按照以下步骤安装flask_CORS lib:

pip3 install Flask-Cors
然后在代码中:

from flask_cors import CORS
app = Flask(__name__)
socketio = SocketIO(app)
CORS(app)

通过降级到SocketIO 2来解决问题

通过降级到SocketIO 2来解决问题

是的,我也确认,python socket.io可与旧版本的客户端socket.io一起使用。是的,我也确认,python socket.io可与旧版本的客户端socket.io一起使用