Sockets 如何正确安装flask socketIO?

Sockets 如何正确安装flask socketIO?,sockets,flask,flask-socketio,python-sockets,flask-sockets,Sockets,Flask,Flask Socketio,Python Sockets,Flask Sockets,我在mac上安装了多次Flask socketio,仔细阅读说明并安装需求(eventlet/gevent)。尽管我运行简单的代码进行测试,但它要么说我没有导入模块,要么什么也不显示,直到我在浏览器中打开index.html,然后它显示: 客户端正在使用不受支持的Socket.IO或Engine.IO协议版本(此错误的进一步出现将与级别信息一起记录) 以下是我的app.py代码: from flask import Flask from flask_socketio import SocketI

我在mac上安装了多次Flask socketio,仔细阅读说明并安装需求(eventlet/gevent)。尽管我运行简单的代码进行测试,但它要么说我没有导入模块,要么什么也不显示,直到我在浏览器中打开index.html,然后它显示:
客户端正在使用不受支持的Socket.IO或Engine.IO协议版本(此错误的进一步出现将与级别信息一起记录)

以下是我的app.py代码:

from flask import Flask
from flask_socketio import SocketIO, send

app = Flask(__name__)
app.config['SECRET_KEY'] = 'hello'
    
socketio = SocketIO(app, cors_allowed_origins='*')
@socketio.on('message')
def handle(msg):
    print("message: "+msg)
    send(msg, bradcast=True)

if __name__ == '__main__':
    socketio.run(app)
这是我的终端窗口:

以下是我的index.html代码(如果需要):


聊天室
$(文档).ready(函数(){
var socket=io.connect('http://127.0.0.1:5000');
socket.on('connect',function(){
send('User has connected!');
});
socket.on('message',函数(msg){
$(“#消息”).append(“
  • ”+msg+”
  • ”); console.log(“收到的消息”); }); $('#sendbutton')。在('click',function()上{ send($('#myMessage').val()); $('#myMessage').val(''); }); });
      发送
      感谢您的帮助

      查看有关版本兼容性的信息

      您已经安装了Flask SocketIO版本5,因此需要JavaScript客户端的版本3,但您有1.4.8


      在版本3.0.5中使用此CDN URL:

      我在pycharm上查看了python解释器,并显示FlaskSocketIO是版本5.0.1。如何使用链接安装js socket客户端?您没有安装它-您已经在index.html的
      标记中引用了它。只需通过更改版本号来更新标签以引用新版本。
      <html>
      <head>
      <title>Chat Room</title>
      <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/1.4.8/socket.io.min.js"></script>
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
      </head>
      <body>
      <script type="text/javascript">
      $(document).ready(function() {
      
          var socket = io.connect('http://127.0.0.1:5000');
      
          socket.on('connect', function() {
              socket.send('User has connected!');
          });
      
          socket.on('message', function(msg) {
              $("#messages").append('<li>'+msg+'</li>');
              console.log('Received message');
          });
      
          $('#sendbutton').on('click', function() {
              socket.send($('#myMessage').val());
              $('#myMessage').val('');
          });
      
      });
      </script>
      <ul id="messages"></ul>
      <input type="text" id="myMessage">
      <button id="sendbutton">Send</button>
      </body>
      </html>