Ich habe einige Beiträge über "JWT vs Cookie" gelesen, aber sie haben mich nur verwirrter gemacht ...
Ich möchte eine Klarstellung , wenn Leute über "tokenbasierte Authentifizierung gegen Cookies" sprechen, beziehen sich Cookies hier lediglich auf Sitzungscookies ? Meines Wissens nach ist Cookie wie ein Medium . Es kann verwendet werden, um eine tokenbasierte Authentifizierung (speichern Sie etwas, das angemeldete Benutzer auf der Clientseite identifizieren kann ) oder eine sitzungsbasierte Authentifizierung (Speichern einer Konstante auf der Clientseite) zu implementieren das entspricht den Sitzungsinformationen auf der Serverseite )
Warum brauchen wir JSON-Web-Token ? Ich habe das Standard-Cookie verwendet, um die tokenbasierte Authentifizierung zu implementieren ( keine Sitzungs-ID, kein Server- oder Dateispeicher ):
Set-Cookie: user=innocent; preferred-color=azure
und der einzige Unterschied, den ich festgestellt habe, ist, dass JWT sowohl Nutzdaten als auch Signaturen enthält ... während Sie wählen können zwischen signiertem oder Klartext- Cookie für http-Header. Meiner Meinung nach ist signiertes cookie (cookie:'time=s%3A1464743488946.WvSJxbCspOG3aiGi4zCMMR9yBdvS%2B6Ob2f3OG6%2FYCJM'
) platzsparender. Der einzige Nachteil ist, dass der Client das Token nicht lesen kann, nur der Server ... aber ich denke, es ist in Ordnung, da genau wie die Behauptung in JWT optional ist, es für das Token nicht erforderlich ist sinnvoll sein