在服务器端护照js本地用户身份验证后,如何在客户端使用cookie显示用户信息?

问题描述 投票:1回答:2

我正在使用护照js和本地用户身份验证的快速会话,并且我想使用cookie在用户使用护照js成功注册后显示用户信息,例如在vue js上运行的客户端上的名字或电子邮件服务器端。我该如何做到这一点?

javascript node.js cookies passport.js express-session
2个回答
0
投票

做这件事有很多种方法:

  1. 使用API​​终结点(如/me)返回登录用户的用户信息。每当需要显示用户的信息时,请调用/me并解析返回的内容。
  2. 使用JWT作为您的cookie并在其中包含用户信息。但是,一旦用户数据发生变化,您将需要更新用户的cookie。这可能适用于相对静态的数据,例如不经常更改的名称。但是,对于频繁更改的数据,这可能不是最方便的选项。还要记住,用户在每个请求上发送cookie中的任何内容,如果加载到cookie中太多,可能会占用额外的带宽甚至超过最大标头长度。

0
投票

您可以使用从客户端将cookie保存到用户的PC

document.cookie="email:[email protected]"

你可以从客户端读取它

let x = document.cookie

如果你想从快速服务器上读取它,你可以使用cookie-parser所以npm安装cookie-parser然后将它需要进入你的快速服务器并做app.use

var express = require('express')
var cookieParser = require('cookie-parser')

var app = express()
app.use(cookieParser())

阅读快递服务器上的cookie,

app.get('/',(req,res)=>{
   console.log(req.cookies.email)
});

这将在服务器端显示cookie。

© www.soinside.com 2019 - 2024. All rights reserved.