Ich benötige eine Klarstellung. Ich habe über REST und den Aufbau von RESTful-Anwendungen gelesen. Laut Wikipedia ist REST selbst wie folgt definiert Repräsentative Zustandsübertragung . Deshalb verstehe ich diese ganze staatenlose Geschichte nicht. Kauderwelsch die jeder ständig von sich gibt.
Aus wikipedia:
Zu einem bestimmten Zeitpunkt kann sich ein Kunde entweder im Übergang zwischen Anwendungszuständen oder "im Ruhezustand" sein. Ein Client, der sich im Ruhezustand befindet, kann mit seinem Benutzer interagieren, erzeugt aber keine Last und verbraucht keinen Speicherplatz auf den Servern oder im Netz.
Sagen sie nur, dass sie keinen Datenspeicher auf Sitzungs-/Anwendungsebene verwenden sollen?
Ich verstehe, dass ein Ziel von REST darin besteht, den URI-Zugang konsistent und verfügbar zu machen, z. B. indem man die Seitenzahl einer Anfrage in den GET-URI aufnimmt, anstatt sie in Beiträgen zu verstecken. Das macht für mich Sinn. Aber es scheint, als ob es einfach zu weit geht, wenn man sagt, dass keine Daten pro Kunde (Sitzungsdaten) sollten niemals serverseitig gespeichert werden.
Was wäre, wenn ich eine Warteschlange von Nachrichten hätte und mein Benutzer die Nachrichten lesen wollte, aber während er sie liest, bestimmte Absender für die Dauer seiner Sitzung blockieren wollte? Wäre es nicht sinnvoll, dies an einem Ort auf der Serverseite zu speichern und den Server nur Nachrichten (oder Nachrichten-IDs) senden zu lassen, die nicht vom Benutzer blockiert wurden?
Muss ich wirklich jedes Mal, wenn ich die neue Nachrichtenliste anfordere, die gesamte Liste der zu blockierenden Absender senden? Die für mich relevante Nachrichtenliste wäre nicht einmal eine öffentlich zugängliche Ressource und sollte es auch gar nicht sein.
Nochmals, ich versuche nur, das zu verstehen. Jemand bitte klären.
Aktualisierung:
Ich habe eine Stack Overflow-Frage gefunden, die eine Antwort hat, die mir nicht ganz weiterhilft: Wie man den Zustand in REST verwaltet der besagt, dass der Zustand des Kunden wichtig ist debe alle auf jeden Antrag übertragen werden.... Ugg.. scheint eine Menge Overhead zu sein... Ist das richtig??