При отправке данных в определенную комнату после обновления API она работает нормально. Но когда я обновляю код sh angular, данные не отправляются в клиентскую комнату. Я не знаю, была ли проблема в коде API или пользовательского интерфейса.
Код сервера
io.on('connection', (socket) => {
socket.on("login", userId => {
socket.id = userId
sockets.add(socket)
console.log(`Socket ${socket.id} added`);
})
socket.on('disconnect', () => {
console.log(`Delete socket : ${socket.id}`);
sockets.delete(socket);
console.log(`Remaining sockets : ${sockets.size}`);
})
socket.on('join', (roomId) => { //Room
socket.join(roomId);
})
socket.on("messageData", (data) => {
chatSchema.create(data, (err, response) => {
if (err) {
console.log(err);
return false;
}
else if (response) {
socket.to(roomId).emit('data', response)
}
})
})
});
Angular Код Сервисный файл
getMessages() {
const observable = new Observable(observer => {
this.socket.on('data', (res) => {
observer.next(res)
});
});
return observable
}
ts файл
ngOnInit() {
this.sub = this.chatService.getMessages().subscribe(response => { //Socket On
this.chats.push(response);
console.log(response);
})
}