A böngésző WebSocket API-ja rendelkezik send(). Nem tesz elérhetővé általános ping() metódust arra, hogy a JavaScript a protokoll Ping-kereteit küldhesse.

Ha az alkalmazás olyan szöveges üzenetet küld, mint {"type":"heartbeat"}, az alkalmazásadat. A kiszolgálónak értenie kell az üzenetet, és definiálnia kell a választ. Az a kiszolgáló, amely nem valósítja meg ezt a szerződést, nem köteles protokoll-Ponggal válaszolni csak azért, mert a szövegben szerepel a ping szó.

Határozza meg, mit jelent a nyugtázás, hogyan azonosítja a függőben lévő szívverést, és mikor késik túlságosan egy régi nyugtázás. Tartsa elkülönítve egy üzleti művelet nyugtázásától.

A JavaScript időzítőjének is vannak ütemezési korlátai. A háttérlapok és a leterhelt fő szálak késleltethetik a visszahívásokat. Ne értelmezzen egy kihagyott pontos időzítőhatárt döntő bizonyítékként arra, hogy a proxy abbahagyta a továbbítást.

A böngésző képes belsőleg kezelni a protokoll vezérlőkereteit, de ez nem ad az alkalmazáskódnak hordozható képet minden Pingről vagy Pongról. Ha az oldalnak saját életképességi döntésre van szüksége, használjon kifejezett alkalmazásszerződést és helyreállítási szabályzatot.

Az a socket, amelynek readyState értéke OPEN, helyben nyitottnak számít; ez nem független mérés arról, hogy a távoli alkalmazás feldolgozta-e az utolsó üzenetét. Olyan bizonyítékot használjon, amely megfelel a valójában megválaszolandó kérdésnek.

Kapcsolódó cikkek