如何为IOS作为客户端的特定客户端发送套接字。

时间:2016-12-29 01:04:09

标签: ios node.js sockets socket.io

对于IOS,我有以下代码:

var socket: SocketIOClient!


override func viewDidLoad() {
    super.viewDidLoad()

    socket = SocketIOClient(socketURL: NSURL(string: "http://localhost:3000")! as URL)
    socket.connect()


    socket.on("general") { (_, _) in

        print(123)

    }





}

在NodeJS中,我有这个:

 io.on('connection', function(socket){ 

 socket.emit('general', "somerandomthing")

 });

这样可以正常工作。但是,我尝试模拟向特定客户端发送消息。我是通过替换

来做到的
 socket.emit('general', "somerandomthing")

 socket.to(socket.id).emit('general', "somerandomthing")

它不再起作用如果我这样做了。它可能没有意义,但我找不到任何与ios客户端和服务器之间的特定套接字相关的文档

1 个答案:

答案 0 :(得分:0)

而不是:

socket.to(socket.id).emit('general', 'somerandomthing')

你应该这样做:

io.to(socket.id).emit('general', 'somerandomthing')

完整代码:

io.on('connection', function(socket){ 

  io.to(socket.id).emit('general', 'somerandomthing')

});