2014-01-10 57 views
1

我正在使用socket.IO-objc庫(https://github.com/pkyeck/socket.IO-objc)與運行socket.io的節點服務器結合使用,雖然我能夠獲取我的iOS客戶端連接到服務器,我似乎無法使用objective-c api觸發服務器上的消息事件。這裏是我的OBJ-C代碼:pkyeck socket.IO-objc不發送事件到socket.io服務器

 - (void)viewDidLoad 
    { 
     [super viewDidLoad]; 

     SocketIO *socketIO = [[SocketIO alloc] initWithDelegate:self]; 
     [socketIO connectToHost:@"my_ip_address" onPort:8080]; 
     [socketIO sendEvent:@"message" withData:@"hello"]; 

和我的服務器代碼:

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

    console.log("connect to socket!"); 

    socket.on('message', function (data) { 
    console.log("got some data!"); 
    }); 

});

任何人都可以解釋爲什麼服務器沒有收到消息事件?謝謝!

+1

您是否在等待連接才能發送消息?作爲@Sneakyness的 – Sneakyness

+0

說:你必須等待客戶端連接。 – pkyeck

回答

0

等待

- (void) socketIODidConnect:(SocketIO *)socket 
{ 
    NSLog(@"socket.io connected."); 
} 

委託召集並添加sendEvent:代碼那裏。例如:

- (void) socketIODidConnect:(SocketIO *)socket 
{ 
    NSLog(@"socket.io connected."); 
    [socketIO sendEvent:@"message" withData:@"hello"]; 
} 

這應該起作用。