Alles anzeigen"Geklaut werden könnte", ja kommt ganz drauf an wie man etwas wo speichert. Ich sag mal so der Client selbst ist ja lokal und mit einer sichern TLS Verbindung ist das auch nicht "klaubar". Ausser jemand hackt sich in dein System öffnet deinen Browser und sucht den Token in zB der JavaScript Datei raus. Wenn du weißt was ich meint ^^.
Token sind stateless richtig. Jeder Token hat eine expiration time sprich eine Zeit wann der Token abläuft und nicht mehr funktioniert. Ausloggen funktioniert dennoch du kannst zB einen Token auf eine Art "Blacklist" schreiben bis er abläuft.
Basierend da drauf dass du Token am Server ebenfalls speichern könntest wäre es theoretisch möglich aber mit keiner Garantie ob der User wirklich online ist. Daher eher nein. (Wie gesagt gibt immer Möglichkeiten etwas zu realisieren kommt jedoch auf den Aufwand bzw. den nutzen an. wenn zB immer nur 3 User drauf sind gebe es genug Wege so etwas schon zu realisieren aber bei 2Mio Usern wäre es nicht mehr so leicht möglich)
//edit
Am gang zum Klo viel mir doch noch eine Möglichkeit ein zu sehen wieiviel online sind.
REST musst ja nicht immer nur RESt sein. Du kannst theoretisch auch einen Socket Schnittstelle einbauen. Sprich jeder der sich einloggt verbindet sich auch automatisch mit dem Socket und verliert logischerweise die Verbindung wenn der Client geschlossen ist. So könntest du theoretisch mitzählen wieviel online sind basierend auf den Verbindungen.
Das mit einem Token zum Einloggen finde ich doch etwas zu unüberschaubar.
Mit einer Socket Verbindung zu wissen welcher User Online ist, wäre natürlich auch eine prima Sache, hatte ich auch schon dran gedacht. Wird gefühlt aber sehr wenig genutzt.
Wenn ich eine Single-Page mit Vue machen möchte, wo ich ebenfalls einen Socket-Server mit einbinde, ist das doch einiges an Aufwand?
Da bräuchte ich zuerst einen normalen Webserver und zwei NodeJS. Einen NodeJS für eine REST-api und ein anderer als Socket-Server oder?
MfG DEWEY
