0Pricing
WebSockets & Realtime Systems Programming · Aula

Tratamento de eventos no lado do cliente

Gerencie com eficiência eventos de conexão, como `open`, `message`, `error` e `close`, no navegador.

Tratamento de eventos no lado do cliente é uma aula grátis de WebSockets & Realtime Systems Programming no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de WebSockets & Realtime Systems Programming, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de WebSockets & Realtime Systems Programming inclui 4 aulas no total.

Partes desta aula ainda não foram traduzidas e aparecem em inglês.

Intro: Why Events Matter

WebSockets are dynamic! Unlike simple HTTP requests, a WebSocket connection stays open. This means you need a way to know when things happen on that connection.

That's where event handling comes in. It allows your browser application to react to the connection opening, messages arriving, errors, or the connection closing.

Connection Established: `onopen`

The first important event is open. This fires as soon as your WebSocket connection has been successfully established and is ready to send and receive data.

It's your green light to start communicating!

Handling Connection Open

Let's see how to handle the open event. When the connection is ready, a message is logged, and then we send a 'Hello' message.

const ws = new WebSocket('wss://echo.websocket.events');

ws.onopen = (event) => {
  console.log('Connection established!');
  ws.send('Hello WebSocket Server!');
};

// Other event handlers will be added later

Receiving Data: `onmessage`

Once connected, your server will send data. The message event is triggered every time your client receives data from the server.

The received data is in event.data. This can be text or binary data, which you might need to parse (e.g., JSON).

Processing Incoming Messages

Now, let's add an event listener for incoming messages. We'll log the data we receive back from the server.

const ws = new WebSocket('wss://echo.websocket.events');

ws.onopen = (event) => {
  console.log('Connection established!');
  ws.send('Hello WebSocket Server!');
};

ws.onmessage = (event) => {
  console.log(`Server says: ${event.data}`);
};

// Other event handlers will be added later

Catching Errors: `onerror`

Things can go wrong! Network issues, server problems, or invalid protocols can trigger the error event. This event signals a problem but doesn't always provide specific error details directly.

Always include an error handler for robust applications.

Handling Connection Errors

Here's how to set up an onerror handler. This will catch general errors during the WebSocket connection's lifetime.

const ws = new WebSocket('wss://echo.websocket.events');

ws.onopen = (event) => {
  console.log('Connection established!');
  ws.send('Hello WebSocket Server!');
};

ws.onmessage = (event) => {
  console.log(`Server says: ${event.data}`);
};

ws.onerror = (error) => {
  console.error('WebSocket encountered an error!');
  // More specific error details might be in the browser console
};

// Other event handlers will be added later

Connection Closed: `onclose`

When a WebSocket connection is deliberately closed by either the client or the server, the close event fires. It provides a code and a reason in the event object.

These details help you understand why the connection ended, which is crucial for debugging or attempting reconnections.

Responding to Connection Close

Let's add the onclose handler. It logs the closure code and reason, which are useful for understanding the connection's end.

const ws = new WebSocket('wss://echo.websocket.events');

ws.onopen = (event) => {
  console.log('Connection established!');
  ws.send('Hello WebSocket Server!');
};

ws.onmessage = (event) => {
  console.log(`Server says: ${event.data}`);
};

ws.onerror = (error) => {
  console.error('WebSocket encountered an error!');
};

ws.onclose = (event) => {
  console.log(`Connection closed! Code: ${event.code}, Reason: ${event.reason || 'No reason provided'}`);
  // Common codes: 1000 (normal), 1001 (going away), 1006 (abnormal closure)
};

Event Handling Check

You've learned about the main WebSocket events. Now, let's test your understanding!

Recap: Mastering WebSocket Events

Great job! You've explored the essential client-side WebSocket events:

  • onopen: Fired when the connection is ready.
  • onmessage: Handles incoming data from the server.
  • onerror: Catches connection-related issues.
  • onclose: Indicates the connection has terminated, providing a code and reason.

Understanding these events is key to building robust and interactive realtime applications!

Perguntas Frequentes

A aula “Tratamento de eventos no lado do cliente” é grátis?

Sim — o texto completo de “Tratamento de eventos no lado do cliente” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de WebSockets & Realtime Systems Programming, atualize para CoddyKit PRO. O curso de WebSockets & Realtime Systems Programming inclui 4 aulas no total.

O que vou aprender em “Tratamento de eventos no lado do cliente”?

Gerencie com eficiência eventos de conexão, como `open`, `message`, `error` e `close`, no navegador. Você pratica WebSockets & Realtime Systems Programming com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar WebSockets & Realtime Systems Programming?

Nenhuma experiência prévia é necessária. WebSockets & Realtime Systems Programming no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Tratamento de eventos no lado do cliente”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de WebSockets & Realtime Systems Programming?

Sim. Cada aula de WebSockets & Realtime Systems Programming inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Fundamentos da API WebSocket do navegador
  2. Enviando e recebendo dados
  3. Tratamento de eventos no lado do cliente
  4. Reconexão automática no cliente
← Voltar para WebSockets & Realtime Systems Programming