Saltar al contenido

Probador de WebSocket

WebSocket Tester

Abre una conexión WebSocket, envía los marcos que compongas y registra todo lo recibido con sus tiempos.

Abre un WebSocket desde tu navegador a un servidor que nombres, envía lo que escribas y registra cada trama en ambas direcciones con tiempos. La conexión es la propia del navegador — nada pasa por nuestro servidor, así que un punto de acceso de desarrollo en tu máquina funciona igual que uno público.

🔒 Se ejecuta por completo en tu navegadorwebsockettestrealtimedebug

La conexión la hace tu propio navegador. Ni la dirección ni nada de lo que se envía o se recibe pasa por nuestro servidor.

Esta página se sirve por https, así que el navegador bloquea ws:// sin cifrar como contenido mixto. Usa wss://, o abre tu servidor de desarrollo por http local.

Separados por comas. Se ofrecen en la cabecera Sec-WebSocket-Protocol y el servidor elige uno.

Un navegador solo puede enviar 1000 o 3000–4999 (RFC 6455 §7.4).

En reposo

Enviar

Registro

Los marcos recibidos son ▼ y los enviados ▲. Los tiempos se miden desde la primera entrada.

Todavía no hay nada.

  • La API WebSocket del navegador no puede enviar marcos ping ni pong por su cuenta, ni añadir cabeceras propias. Cuando hace falta autenticación, lo habitual es un token en el primer mensaje, en la consulta de la URL o como subprotocolo.

Cómo se usa

  1. Escribe una dirección wss://

    Esta página se sirve por https, así que el navegador bloquea ws:// plano como contenido mixto. Se puede ofrecer un subprotocolo junto a ella; el servidor elige uno y el registro dice cuál.

  2. Envía una trama

    El JSON válido se compacta a una línea antes de enviarse, así que un mensaje pegado con formato sale como lo enviaría un cliente. Cualquier cosa que no sea JSON sale tal como se escribió.

  3. Lee el registro por dirección y tiempo

    Las tramas recibidas son ▼, las enviadas ▲, los eventos ●, y cada una lleva el tiempo transcurrido desde la primera entrada. Así distingues un servidor que nunca respondió de uno que respondió despacio.

  4. Cierra con un código cuando necesites uno

    Un navegador solo puede enviar 1000 o 3000–4999 (RFC 6455 §7.4), así que el rango definido por la aplicación es donde van tus propios códigos. El código de cierre que vuelve se explica con palabras.

Preguntas frecuentes

¿Puedo añadir una cabecera Authorization?

Desde un navegador no: la API WebSocket no permite ninguna cabecera personalizada. Las convenciones son un token en el primer mensaje, en la consulta de la URL, o colado como subprotocolo; cuál usar depende del servidor.

Se cerró con 1006 y sin motivo

1006 significa que la conexión cayó sin trama de cierre: el servidor se cayó, un proxy agotó el tiempo, o el apretón de manos fue rechazado. Los navegadores ocultan el motivo deliberadamente por seguridad, así que la respuesta está en el registro del servidor, no aquí.

¿Puedo enviar una trama ping?

No. Los navegadores responden los pings automáticamente y no le dan a la página forma de enviar uno. Las aplicaciones que necesitan un latido envían un mensaje corriente y dependen del servidor para responder.

¿Mi tráfico pasa por su servidor?

No. El navegador se conecta directamente, así que la dirección y cada trama quedan entre tú y ese servidor. También significa que un punto de acceso en localhost funciona aquí, cosa que un probador del lado del servidor nunca podría alcanzar.

Puede recibir de

Después

Estas aceptan lo que produce esta herramienta, así que el resultado puede pasar directamente.