尝试在烧瓶服务器和reactjs客户端之间创建一个socketio链接。它显示此错误
“ CORS策略已阻止从源“ http://127.0.0.1:5000/socket.io/?EIO=3&transport=polling&t=MrcruFC”访问“ http://localhost:3000”处的XMLHttpRequest:请求的资源上没有“ Access-Control-Allow-Origin”标头。
我尝试从flask cors文档中包含CORS,但仍然无法正常工作。
服务器:
from flask import Flask, Response
from flask_cors import CORS
from flask_socketio import SocketIO
app = Flask(__name__)
cors = CORS(app)
socketio=SocketIO(app)
@socketio.on('connection')
def handle_my_custom_event():
socket.emit('outgoing data',{num: '10'})
@app.route("/")
def hello():
return 'Hello'
if __name__ == '__main__':
socketio.run(app, host='0.0.0.0', port=5000)
答案 0 :(得分:1)
您可以添加用于创建SocketIO的选项。
socketio = SocketIO(app=app, cors_allowed_origins='*')
答案 1 :(得分:-1)
您可以使用以下标头允许CORS:
header = response.headers
header['Access-Control-Allow-Origin'] = '*'