Здравствуйте, у меня проблема, когда я использую SocketIO в ios, ack всегда false и данные пустые, но в веб-приложении и Android-приложении, работающем со мной, я включил код на стороне сервера и сторону клинтов, как этот код работает?Когда я отправляю идентификатор комнаты включенным сокетом, и я реализовал функцию сокета emit с событием «welcome», чтобы получить данные, спасибо за помощь
2019-03-16 07: 41: 00.447911 + 0200 ALILON Z[21158: 307613] LOG SocketIOClient {/}: событие обработки: понг с данными: []
2019-03-16 07: 41: 00.448000 + 0200 ALILON Z [21158: 307701] LOG SocketEnginePolling: выполнение опросаGET http://realapi.imatcheg.com/socket.io/?transport=polling&b64=1&sid=Us1opxksMNjHH6bpAAAB
2019-03-16 07: 41: 00.448373 + 0200 ALILON Z [21158: 307701] LOG SocketEnginePolling: создана строка POST: 19:42 ["joinRoom", "21"]
2019-03-16 07: 41: 00.448705 + 0200 ALILON Z [21158: 307701] LOG SocketEnginePolling: POSTing
2019-03-16 07: 41: 00.448877 + 0200 ALILON Z [21158:307701] LOG SocketEnginePolling: Выполнение опроса POST http://realapi.imatcheg.com/socket.io/?transport=polling&b64=1&sid=Us1opxksMNjHH6bpAAAB
this is server side /=============================
socket.on("joinRoom",(room) =>{
socket.join(room);
let myJSON = [
{
name: "Banana",
points: 200,
description: "A banana grown in Ecuador."
}
]
socket.emit("welcome",myJSON);
});
socket.on("refresh",(rm)=>{
io.of("/members_chat").emit("get_history");
});
});
And this Client side /===================
let manager = SocketManager( socketURL: URL(string:"http://realapi.imatcheg.com/members_chat")!, config: [.log(true), .forcePolling(true)])
override init() {
super.init()
}
func establishConnection(){
manager.connect()
}
func closeConnection(){
manager.disconnect()
}
func joinTheRoom( room_id : String){
print(room_id)
manager.defaultSocket.emit("joinRoom", room_id )
}
func welcome ( room_id : String){
self.manager.defaultSocket.on("welcome") { (sd, ack) in
print(sd)
print("(ack)")
}
manager.defaultSocket.on(clientEvent: .connect) {data, ack in
print("socket connected")
self.joinTheRoom(room_id : room_id )
}
}