1.導(dǎo)入
pod 'Socket.IO-Client-Swift', '~> 15.2.0'
2.引用
@import SocketIO;
3.代碼
- (void)laodsocket{
NSURL *url = [NSURL URLWithString:@"ws://192.168.0.216:8100/msg/lotteryDraw"];
self.socketManager = [[SocketManager alloc] initWithSocketURL:url config:@{@"log": @YES, @"compress": @YES}];
self.socketClient = self.socketManager.defaultSocket;
//這段初始化代碼報(bào)錯(cuò)挨下,我用了上面那個(gè)初始化方法
// SocketIOClient *socket = [[SocketIOClient alloc] initWithSocketURL:url config:@{@"log": @YES, @"forcePolling": @YES}];
[self.socketClient connect];
//監(jiān)聽(tīng)是否連接上服務(wù)器,正確連接走后面的回調(diào)
[self.socketClient on:@"connect" callback:^(NSArray* data, SocketAckEmitter* ack) {
NSLog(@"socket connected=================");
}];
//監(jiān)聽(tīng)new message蚣旱,這是socketIO官網(wǎng)提供的一個(gè)測(cè)試用例翻翩,大家都可以試試。如果成功連接褂萧,會(huì)收到data內(nèi)容押桃。
[self.socketClient on:@"new message" callback:^(NSArray* data, SocketAckEmitter* ack) {
NSLog(@"response is %@",data);
}];
[self.socketClient on:@"disconnect" callback:^(NSArray* data, SocketAckEmitter* ack) {
NSLog(@"socket.io disconnect---%@",data);
}];
[self.socketClient on:@"error" callback:^(NSArray* data, SocketAckEmitter* ack) {
NSLog(@"socket.io error -- %@",data);
}];
}