WebTransport echo server

A free public echo endpoint for testing WebTransport clients. Connect to https://echo.webtransport.day/ (any path works, from any origin).

Example

const wt = new WebTransport("https://echo.webtransport.day/echo");
await wt.ready;
// bidirectional stream: bytes come back on the same stream
const s = await wt.createBidirectionalStream();
const w = s.writable.getWriter();
await w.write(new TextEncoder().encode("hello"));
await w.close();
const { value } = await s.readable.getReader().read();
console.log(new TextDecoder().decode(value)); // "hello"
// datagram: sent straight back
const dw = wt.datagrams.writable.getWriter();
await dw.write(new Uint8Array([1, 2, 3]));
const dr = wt.datagrams.readable.getReader();
console.log((await dr.read()).value); // Uint8Array [1, 2, 3]
wt.close();

Limits

This is a shared service, so it has abuse limits: 200 sessions in total, 10 per IP, 1 MB per stream, 10 MB per session, 100 datagrams/s, idle timeout 1m0s, maximum session lifetime 10m0s. Refused sessions get a clear HTTP error; payloads are never logged.

Links

Independent service run by WebTransport Day; not affiliated with the former echo service.