gpt4 book ai didi

node.js - 我正在使用 Parse.com 和 nodejs 进行用户身份验证,但每个人都是同一用户

转载 作者:搜寻专家 更新时间:2023-11-01 00:24:14 25 4
gpt4 key购买 nike

我正在使用 node parse package在服务器上执行用户身份验证。但是,一旦单个用户登录,该网站的每个访问者都将作为该用户进行身份验证。

最佳答案

由于 parse 和 nodejs 的性质,parse 以这样一种方式存储用户,即它被验证到您的 Node 实例,而不是客户端。要解决此问题,请使用 parse、 session 和 Parse 用户对象中的 .become() 方法提供的用户 token 。

我选择使用 cookie-session用于 session 。

当您的用户登录时:

parse = require('parse').Parse
parse.initialize([ your key ], [ your other key ])

parse.User.logIn(req.body.username, req.body.password, {
success: function(user) {
req.session.token = user._sessionToken
[ whatever you want to do here]
},
error: function(error) {
[ handle your error ]
}
})

在每次页面加载时:

app.use(function(req, res, next) {
parse = require('parse').Parse
parse.initialize([ your key ], [ your other key ])
parse.User.become(req.session.token ? req.session.token: "gibberish").then(function(user) { // If null is passed to .become() it will assume current(), which we don't want
[ user is now the client authenticated user ]
})
})

注销:

parse = require('parse').Parse
parse.initialize([ your key ], [ your other key ])

parse.User.logOut()
req.session = null

关于node.js - 我正在使用 Parse.com 和 nodejs 进行用户身份验证,但每个人都是同一用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28616252/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com