账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    socket.io emit()发送的是什么?
    195
    0
    socket.emit('send', {}, function () {
                        //callback
                    })
    
    <script src="https://cdn.bootcss.com/socket.io/2.0.3/socket.io.js"></script>                

    我很奇怪,这个emit 需要传入三个参数,如果第二个参数是类似请求体一类的东西,那么这个send又是什么东西?

    我想通过chrome抓包,但是不知道为什么抓不到websocket传输的内容。
    如果用协议文本的方式来展示,这里的send应该是什么样子的?

    我在服务器如何取出它?

    
    from flask_socketio import (
        emit,
        join_room,
        leave_room,
        SocketIO
    )
    
    socketio = SocketIO()
    
    @socketio.on('send', namespace='/chat')
    def send(data):
        emit('message', d, room=room)

    这里的python后端中,可以非常轻松的获取到这个send,我想请问下这个send是个什么形式的东西?

    因为我想在Android平台上使用websocket但是不知道从哪里可以向服务器发送类似send的标识?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • ∞帞蕥。 普通会员 1楼

      在Socket.IO中,emit() 是一个事件驱动的方法,它用于在事件循环中向连接的客户端发出一个或多个事件。以下是一个简单的示例,展示了 emit() 方法如何在一个 Socket.IO 网络连接中发送一个名为 "message" 的事件:

      ```javascript // 创建一个 Socket.IO 库连接 const socket = new SocketIO('http://localhost:3000');

      // 向连接发送事件 socket.emit('message', 'Hello, World!'); ```

      在上述示例中,socket.emit('message', 'Hello, World!') 将向连接的客户端发送一个名为 "message" 的事件,其中参数 "Hello, World!" 是包含在事件字符串中的消息。当客户端接收到这个事件时,他们可以响应这个事件,例如通过 JavaScript 的 on() 方法在事件处理函数中处理它:

      javascript // 在事件处理函数中处理 "message" 事件 socket.on('message', function(data) { console.log('Received message:', data); });

      在事件处理函数中,我们使用 console.log() 方法打印出事件的详细信息,包括事件名称和参数。当客户端收到这个事件时,他们可以响应它,并在自己的事件循环中处理它,如以下示例:

      javascript // 客户端处理 "message" 事件 socket.emit('message', 'Hello, World!');

      请注意,emit() 方法在事件循环中的调用会立即执行,而不是像 listen() 方法那样在事件触发后执行。因此,emit() 方法通常用于在事件发生之前触发事件,例如在客户端初始化连接后立即发送 "connect" 事件。如果需要在事件触发后执行某些操作,通常需要使用 listen() 方法或注册事件处理器函数来实现。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部