为了账号安全,请及时绑定邮箱和手机立即绑定

如何将 Javascript 客户端连接到蟒蛇-套接字 IO 服务器?

如何将 Javascript 客户端连接到蟒蛇-套接字 IO 服务器?

Go
德玛西亚99 2022-10-05 09:30:46
我刚刚开始使用Python-SocketIO,我创建了一个示例服务器,它看起来像这样:import eventletimport socketiosio = socketio.Server()app = socketio.WSGIApp(sio, static_files={    '/': {'content_type': 'text/html', 'filename': 'index.html'}})@sio.on('connect')def connect(sid, environ):    print('connect ', sid)@sio.on('msg')def message(sid, data):    print('message ', data)@sio.on('disconnect')def disconnect(sid):    print('disconnect ', sid)if __name__ == '__main__':    eventlet.wsgi.server(eventlet.listen(('', 5000)), app)然后,我有一个HTML文件,它正在Django应用程序上运行,我想将该客户端连接到我的Python-SocketIO服务器:<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.2.0/socket.io.js"></script><script>socket = io.connect('');socket.on('connect',function() {  console.log('Client has connected to the server!');});socket.on('msg',function(data) {  console.log('Received a message from the server!',data);});socket.on('disconnect',function() {  console.log('The client has disconnected!');});// Sends a message to the server via socketsfunction send(message) {  socket.send('msg',message);};</script>问题是,在我的客户端,我不断收到以下错误:Access to XMLHttpRequest at 'http://localhost:5000/socket.io/?EIO=3&transport=polling&t=N5eSEa2' from origin 'http://127.0.0.1:8000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.localhost:5000/socket.io/?EIO=3&transport=polling&t=N5eSEa2:1 Failed to load resource: net::ERR_FAILED我的詹戈服务器正在运行。任何人都可以帮我找到我做错了什么吗?on http://127.0.0.1:8000/
查看完整描述

1 回答

?
PIPIONE

TA贡献1829条经验 获得超9个赞

在服务器上设置 CORS 标头:

sio = socketio.Server(cors_allowed_origins='*')

()


查看完整回答
反对 回复 2022-10-05
  • 1 回答
  • 0 关注
  • 132 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号