Skip to content

EliasGabriel1/zap-zap-websocket

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Arquivo principal: server.js

Este arquivo contém o código do servidor Socket.io que é responsável por gerenciar as conexões e comunicações de chat em tempo real entre clientes.

Instalação e Configuração

Antes de executar o servidor, é necessário instalar o pacote Socket.io e suas dependências:

bashCopy code
npm install socket.io e logo dar npm start

A porta padrão para o servidor é 3001, mas pode ser alterada conforme necessário. No exemplo abaixo, o servidor está configurado para ouvir na porta 3001 e permitir conexões somente de origem "http://localhost:3000" com os métodos GET e POST.

javascriptCopy code
const io = require('socket.io')(3001, { cors: { origin: 'http://localhost:3000', methods: ['GET', 'POST'], }, });

Gerenciamento de Conexões

O servidor Socket.io é notificado sempre que um novo cliente estabelece uma conexão. O servidor registra o ID do socket do cliente e imprime uma mensagem de registro no console. Quando um cliente se desconecta, o servidor também é notificado e exibe uma mensagem de desconexão no console.

javascriptCopy code
io.on('connection', (socket) => { console.log(`Nova conexão estabelecida: ${socket.id}`);

socket.on('disconnect', () => { console.log(Conexão encerrada: <span class="hljs-subst">${socket.id}</span>); }); });

Gerenciamento de Mensagens

Quando um cliente envia uma mensagem através do socket, o servidor recebe a mensagem e imprime uma mensagem no console com o conteúdo da mensagem e o ID do socket do cliente que a enviou. Em seguida, o servidor emite a mensagem para todos os clientes conectados.

javascriptCopy code
socket.on('chat message', (msg) => { console.log(`Nova mensagem recebida: ${msg} ${socket.id}`); var x = [msg,socket.id] io.emit('chat message', x); });

Iniciando o Servidor

O servidor Socket.io é iniciado na porta definida anteriormente e uma mensagem de log é exibida no console para indicar que o servidor está escutando na porta especificada.

javascriptCopy code
const port = 4000; io.listen(port); console.log(`Servidor Socket.io escutando na porta ${port}`);