Ankündigung

Einklappen
Keine Ankündigung bisher.

Clientseitige Meldung wenn der Socket-Server crasht ?!?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Clientseitige Meldung wenn der Socket-Server crasht ?!?

    Hallo Forum,

    da mein Server wieder läuft arbeite ich auch an meinem Projekt weiter und komme hier auf ein Problemchen.
    Auf Server-ebene kann ich via on('disconnect') steuern was passiert wenn ein user die Seite schließt oder eben andersweitig nciht mehr da ist (kein Internet etc.).

    Ich benötige gerade ähnliches auf client-seite, wenn der Server crasht möchte ich dies nutzen um mittzuteilen das der Server gerade Probleme hat und ggf. wenn die Probleme behoben sind und der Server wieder da ist die Session wiederherstellen.
    Natürlich verbindet sich der Client wieder automatisch aber es wäre gerade von Vorteil wenn ich eigene Scripte dort anhängen kann die ausgeführt werden wenn der client wieder verbunden ist nach dem der Server weg war.

    Gibt es da irgend etwas oder wo müsste ich da ansetzen?

    MfG: Paykoman

  • #2
    Du müsstet beim Response Status Code den der Server zurück liefert ansetzen und timeout natürlich.
    Wenn du timeout nicht änderst, müsstest du im schlimmsten Fall immer 30 Sekunden warten, oder eben die default time des Client.

    Gültige Werte für den Response sind
    alle 2XX
    und 304

    restliche 3er Reihe sind Umleitungen
    4er sind verbotene Dinge des Client
    5er sind Fehler des Servers, sofern er noch atmet.

    Wenn der Server down ist kommt natürlich kein Response, sondern ein Abbruch vom Client durch timeout, das heisst Zeitüberschreitung.

    Kommentar


    • #3
      Er redet von WebSocket, nicht von HTTP.

      https://stackoverflow.com/questions/...ith-websockets

      Kommentar


      • #4
        Timeout gilt auch bei websockets und bei stackoverflow reden die auch ping ping methode, basierend auf timeout.
        Gut, Status Codes gibt es dann nicht, das ist schon richtig.

        Kommentar


        • #5
          Ja... ich habe halt auch gesehen das in der Console ne Meldung erscheint sobald der Server aus ist. Da dachte ich es muss doch ne einfache Möglichkeit geben ohne ständig den Server mit Pings zu belasten.

          Lösung:
          Code:
          socket.on('disconnect', function() {
                  console.log('Got disconnect!');
                  socket.disconnect(); // Verbindung trennen
                  // oder kein disconnect einfügen und eigene Functionen einbauen die alles regeln wenn der Server wieder da ist
              });

          Kommentar

          Lädt...
          X