0
IOS客戶端SOCKET.IO SWIFT Socket.io瀏覽器客戶端:不從socket.io客戶端接收發出事件
class SignupViewController: UIViewController{
let socket = SocketIOClient(socketURL: NSURL(string: "http://localhost:3000")!)
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func createUser(sender: AnyObject) {
LoginUser(email: emailInput.text!, password: passwordInput.text!){ results in
self.addHandlers()
self.socket.connect()
}
}
private func addHandlers(){
socket.on("connect") {data, ack in
self.socket.emit("new-device-connect", "ascascasc")
}
}
SERVER:
// start the server if `$ node server.js`
if (require.main === module)
app.io = require('socket.io')(app.start());
//app.start();
app.io.on('connection', function(socket){
console.log("client connected");
socket.on('disconnect', function(){
console.log('user disconnected');
});
});
瀏覽器客戶端
var socket = io('http://localhost:3000');
socket.on('connect', function(){
socket.on("new-device-connect", function(d){
console.log("a new client is connected");
});
socket.on("disconnect", function(){
});
});
當我在IOS客戶端名稱new-device-connect
中發出事件時,我需要在瀏覽器客戶端上調用該事件以顯示新的IOS設備連接特德,但瀏覽器客戶端沒有收到new-device-connect
事件。
感謝兄弟。今晚我可以輕鬆休息,現在抽菸。我知道我錯過了一些東西。我想如果我從客戶端發出一個事件,那麼服務器和客戶端都會監聽該事件,因爲它們位於相同的套接字和端口上。 –