0

我是 socket io 的新手,我很困惑,因为我从服务器收到重复的消息。我在服务器端使用flask-socketio。

这是服务器端代码:

class StdOutListener1(StreamListener):
    def on_data(self, data):
        data = json.loads(data)
        socketio.emit('streamTweets1',{"data": data},namespace='/tweet')

@socketio.on("connect", namespace="/tweet")
def connectServer():
    print("Client connected")
    socketio.emit("connected", namespace="/tweet")


@socketio.on('startTweets1', namespace='/tweet')
def tweetStreaming1():
    stream_1 = Stream(auth_1, l1)
    stream_1.filter(track=search_list_1)

stream_1.filter(track=search_list_1)将在类中调用该on_data函数。StdOutListener1

我的客户端代码是:

    socket = io.connect("http://" + document.domain + ":" + location.port + "/tweet");
    // listen to the event 'connected'
    socket.on("connected", function(data) {
      console.log("listening connected...");
      socket.emit("startTweets1");
    });

socket.on("streamTweets1", function(data){ console.log(data) });

每次刷新客户端页面后,我都会得到重复的结果。

另外,我不确定如何停止或断开连接。我尝试使用 control + c 来停止服务器,但它似乎会继续运行。如何正确停止服务器并断开连接?

4

0 回答 0