Heim > Fragen und Antworten > Hauptteil
Benutzer-JWT wird als reines HTTP-Cookie an den Browser gesendet. Meine Frage ist: Wie kann ich dem Browser den Anzeigenamen, die Benutzerdatenbank-ID usw. am besten mitteilen?
Ich weiß, dass Informationen in der JWT-Nutzlast festgelegt werden können und werden, aber ist es nicht die beste Vorgehensweise, dieses Cookie (JWT) für clientseitiges JavaScript nicht verfügbar zu machen?
Ich kann mir zwei Möglichkeiten vorstellen: das Festlegen benutzerdefinierter Antwortheader oder das Senden der Daten als JSON in einem -Element. Die Idee ist, es sozusagen aus der Band zu schicken.
Ich möchte dem Standard entsprechen.
Ich denke, die richtige Antwort besteht darin, den No-Cache-Antwortheader festzulegen und dann die zurückgegebenen Informationen in localStorage zu speichern, aber ich wollte fragen ...
P粉2758839732023-09-16 12:51:57
可以将多个 cookie 发送到浏览器,并且可以有选择地将它们标记为 HTTP Only,如下所示。此外,您的服务器可以发送数据/JSON 来响应您的浏览器 XHR/Fetch 请求。
let cookieArray = []; cookieArray.push(`displayName=${displayName}`); cookieArray.push(`id=${id}`); cookieArray.push(`email=${email}`); cookieArray.push(`token=${cookie}; HttpOnly`); response.setHeader('Set-Cookie', cookieArray);
结果: