Testador / cliente de WebSocket

Ligue-se a qualquer endpoint ws:// ou wss://, declare subprotocolos opcionais, envie mensagens de texto ou JSON e acompanhe um registo completo do ciclo de vida: transições de estado, códigos e motivos de fecho, e cada mensagem com a sua direção, hora e conteúdo. Tudo corre localmente no seu navegador através da API WebSocket nativa — nada é encaminhado por um servidor. Para APIs HTTP comuns use o Cliente / testador de API REST; veja toda a família de Ferramentas de API.
FECHADO Enviar JSON de boas-vindas ao ligar
Registo de mensagens 0 eventos
Ainda nada. Ligue-se a um servidor para começar.
Limitações do WebSocket no navegador a conhecer: os cabeçalhos de pedido não podem ser personalizados (só são enviados os cookies e o subprotocolo Sec-WebSocket-Protocol acima); o handshake não é regido pelo CORS, mas o connect-src da Content-Security-Policy da página pode bloqueá-lo; uma página segura (https) só pode abrir wss://; o JavaScript não pode enviar frames de ping a nível de protocolo (o navegador responde automaticamente aos pings do servidor — use mensagens ao nível da aplicação como {"type":"ping"} para simular heartbeats); os certificados autoassinados não são de confiança. Recomendado para testes locais: execute o seu próprio servidor, ou use um eco público como wss://ws.postman-echo.com/raw ou wss://echo.websocket.org.
WebSocket explicado
Um WebSocket dá-lhe um canal de mensagens bidirecional e persistente entre o navegador e um servidor. Ao contrário do HTTP, as mensagens podem viajar nos dois sentidos numa única ligação.
ws:// vs wss://—ws://não é cifrado (comohttp://); wss://é cifrado (comohttps://). Se esta página for servida por HTTPS, o navegador só permitewss://ligações. A partir de um ficheiro local (file://) ambos os esquemas são permitidos, mas muitos servidores de eco públicos (incluindo echo.websocket.org) só aceitamwss://.
Subprotocolos — a lista opcional separada por vírgulas corresponde ao cabeçalho de handshake Sec-WebSocket-Protocol. O servidor tem de suportar pelo menos um deles, caso contrário o navegador recusa a ligação.
Porque é que Ligar termina mas nenhuma caixa de « Enviar mensagem » aparece? O formulário de envio só aparece quando o estado passa a OPEN. Se o servidor rejeitar o handshake, verá um evento de erro seguido de CLOSED com código 1006 (fecho anormal — sem frame de fecho). Causas típicas: usar ws:// contra um servidor que só aceita wss://, uma máquina/porta errada, um desencontro de subprotocolo, ou o servidor estar offline.
Códigos de fecho que pode ver — 1000 normal; 1001 o separador do navegador está a fechar; 1006 anormal / handshake falhado; 1009 mensagem demasiado grande; 1011 erro do servidor. O registo mostra automaticamente o código e um motivo curto.
Resolver uma ligação falhada: primeiro mude o esquema para wss://, confirme que a máquina é alcançável, retire os subprotocolos de que não precisa, e verifique a consola do navegador para erros de TLS ou de conteúdo misto.