0% acharam este documento útil (0 voto)
45 visualizações3 páginas

SISDIS

Informações sobre socketio

Enviado por

Dauster
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
45 visualizações3 páginas

SISDIS

Informações sobre socketio

Enviado por

Dauster
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF ou leia on-line no Scribd
Aluno: Dauster Rodrigues Barbosa © que é SocketiO? SocketlO é uma biblioteca que visa prover uma abstracdo de socket que permite a comunicagao bidirecional entre cliente e servidor, o SocketlO trabalha em cima do protocolo WebSocket que permite a comunicagao em tempo real entre sistemas. 2-Explicagao do cédigo. SERVIDOR: J! importando 0 médulo ‘express’ e criando uma instancia da aplicagao Express. const app = require(‘express’)(); 11 Criando um servidor HTTP e associando-o a instancia da aplicagao Express. const http = require('http’). Server(app): JI Configurando o Socket.|O para trabalhar com o servidor HTTP. const io = require('[Link]')(http); 11 Definindo o host e a porta em que o servidor seré executado. const host = [Link]. HOST || ‘localhost’; const port = [Link] || 3000; I Importando 0 médulo ‘path’ para manipulagao de caminhos de arquivo. const path = require(‘path’); J! Definindo uma rota para a raiz da aplicagdo. [Link]('’, (req, res) => { 11 Enviando 0 arquivo ‘[Link]’ como resposta quando alguém acessa a raiz. [Link](path join(_dirame, ‘[Link]’); yy 1! Configurando 0 Socket.{O para lidar com conexées de cliente. [Link](‘connection’, (socket) => { 1 Configurando um ouvinte de eventos para o evento ‘chat message’ [Link](‘chat message’, msg => { 11 Enviando a mensagem recebida para todos os clientes conectados. [Link](‘chat message’, msg); ds J! Iniciando o servidor HTTP na porta e host especificados. [Link](port, host, () => { [Link]("Socket.|O server running at [Link]"); ys CLIENTE: JI Cria uma conexo do cliente com o servidor [Link] const socket = io(); 11 Obtém referéncias aos elementos HTML const messages = [Link](‘messages’); // area onde as mensagens do chat so exibidas const form = [Link](‘form’); // formulario onde 0 usuario pode enviar mensagens const input = [Link](‘input’); // campo de entrada de texto onde o usuario digita mensagens JI Adiciona um ouvinte de evento para o evento ‘submit’ do formulario [Link](‘submit’ (2) => { [Link](); / Evita 0 comportamento padrao de recarregar a pagina IVerifica se 0 campo de entrada tem um valor (se 0 usudrio digitou uma mensagem) if ([Link]) { I/ Envia a mensagem para o servidor usando Socket.|O com o evento ‘chat message’ [Link]('chat message’, [Link]); I Limpa 0 campo de entrada para que o usuério possa digitar uma nova mensagem [Link] } wy JI Adiciona um ouvinte de evento para 0 evento ‘chat message’ recebido do servidor [Link](‘chat message’, (msg) => { 1 Cria um elemento
  • para exibir a mensagem recebida const item = [Link](Ii); 1! Define o texto da mensagem como contetido do elemento
  • [Link] = msg; I Adiciona o elemento
  • & lista de mensagens para exibir na area de chat [Link]{item); 1/ Rola a janela do chat para o final, garantindo que a mensagem mais recente seja visivel window scrollTo(0, document body scrollHeight); yD 3- Como é feito e envio e recebimento das mensagens. Diferente do protocolo HTTP em que o servidor s6 envia uma resposta mediante uma solicitagéo do cliente, o protocolo WebSocket cria uma comunicagdo bidirecional entre o cliente e o servidor permitindo que o servidor envie dados para o cliente sem haver uma solicitago, isso permite a ‘comunicagao em tempo real entre clientes e servidores que implementam esse protocolo, com relagao as abas do navegador o servidor ira receber o evento “chat message” de uma aba junto ‘com a mensagem a ser enviada ¢ ird enviar para todos os clientes conectados. a om) E J request |__ em ° websocket accept» Trequest _| | response. Trequest response WebSocket co closed <—

    Você também pode gostar