Tag: 会话

节点TLS票据重build连接

我在做nodejs的实验。 我正尝试使用TLS票证来恢复TLS会话。 所以我会在连接成功后让客户端保存掉TLS Ticket。 closures后,我希望它使用相同的TLS票证重新build立TLS连接。 我发现节点tls命令tlsSocket.getTLSTicket()但是我不知道如何使用它来重新build立连接,因为它是“只用于debugging”。 我想要的是从客户端获取TLSTicket的能力,并通过nodejs中的服务器中的TLSTicketKey手动validation它。 谢谢

如何踢用户会话?

我的系统使用passport.js进行身份validation。 用户可以根据本地策略进行login和注销。 我正在研究一个允许超级用户从我的系统踢用户的function。 我目前的做法是: 将用户configuration文件设置为禁用 删除用户会话 用户无法再次login,因为用户configuration文件被禁用(使用本地策略) 我怎样才能删除MongoStore中的用户会话? "express": "~4.13.1", "express-session": "~1.11.3", "mongoose": "~4.0.7", "passport": "~0.2.2", "passport-local": "~1.0.0",

AngularJS服务器会话和validation与nodeJS后端服务器

我有一个前端angularJS服务器,通过中间件从MySQL数据库获取后端nodeJS服务器的数据。 我创build了一个前端简单的login表单,需要在后端服务器上发送数据进行身份validation(检查用户是否存在于数据库中)。 如果用户在数据库中find或打印错误login消息或redirect到注册屏幕,后端服务器将返回用户详细信息。 我正在寻找一个指导或例子如何创build一个正确的身份validation系统与两个服务器之间的会话和cookie。 谢谢。

在Redis中使用快速会话时NodeJS中出现错误

我在Node.js中有一个项目,我从express-session中使用了MemoryStore,但是当我更改为使用redis(connect-redis)的会话时,在访问任何页面时收到错误ERR错误的“set”并且无法login(因为会话未创build,或者创build不正确)。 试图find为什么发生这种情况,我创build了一个简单的项目,看看是什么导致了错误,但即使经过大量的search,我找不到原因。 我遵循https://github.com/tj/connect-redis中的说明,并在https://stackoverflow.com/上看到了很多示例,但错误仍在发生。 我以更多的方式进行testing(注释行和其他),但仍然在发生。 只有在访问一个页面( localhost:3000 ,这个testing中只有这个页面)时才会发生,而不是在服务器启动时。 package.json文件: { "name": "test", "description": "Test", "version": "0.0.1", "private": false, "scripts": { "start": "node app.js" }, "dependencies": { "express": "^4.13.1", "express-load": "^1.1.15", "express-session": "^1.13.0", "cookie-parser": "^1.4.1", "redis": "^2.4.2", "connect-redis": "^3.0.2", "ejs": "^2.4.1" } } app.js文件: const SECRET = 'test'; var express = require('express') , load = require('express-load') , […]

'session'是未定义的 – Este JS / Express / Redis会话存储

我正在尝试在快速应用程序中使用redis进行会话。 我做了以下几点: 服务器/ auth.js import express from 'express'; import uuid from 'uuid'; const router = express.Router(); router.route('/login').post((req, res) => { const { password } = req.body; if (password !== 'pass1') { res.status(401).end(); } else { const token = uuid.v4(); req.session.token = token; res.status(200).send({token}).end(); } }); router.route('/watch').post((req, res) => { console.log(req.session.token); res.status(200).send({}).end(); }); router.route('/logout').post((req, res) => […]

无法检索Node.JS中的会话

你好每个人我正在实施一个angular度的应用程序与运行在后端的Node.js我正在设置angularJS的会议,我已经使我自己的工厂,我在我的节点js服务器中使用socket.io也是路由来自node.js服务器的应用程序。 我想限制未经身份validation的用户访问页面,但我必须检索我的node.js服务器,我无法这样做的会话值。 我附上我的代码片段。 Server.js var fs = require('fs'); var express = require('express'); var https = require('https'); var path = require('path'); var options = { key: fs.readFileSync(path.join(__dirname, 'fake-keys/privkey.pem')), cert: fs.readFileSync(path.join(__dirname, 'fake-keys/fullchain.pem')), ca: fs.readFileSync(path.join(__dirname, 'fake-keys/chain.pem')) }; var PORT = 9001; var HOST = '192.168.1.2'; app = express(); app.use(express.static(__dirname)); server = https.createServer(options, app).listen(PORT, HOST); console.log('HTTPS Server listening on […]

护照会话显示未定义的req.user

当imloginreq.user时应该显示,但在导航到/test ,req.user是undefined 。 这是为什么? server.js var express = require('express'); // call express var app = express(); // define our app using express var bodyParser = require('body-parser'); var mongoose = require('mongoose'); var session = require('express-session'); var router = express.Router(); var Account = require('src/app/models/Users.js'); var Core = require('/src/app/gamemodels/core'); // Init passport authentication var passport = require('passport'); var […]

Node.js / Express中session_start()和$ _SESSION的等价物

我试图find相当于Node.js / Express中的session_start()和$ _SESSION,以便将当前用户的id放在会话中。 几乎每个video/教程都使用快速会话,但我读到: 警告默认的服务器端会话存储器MemoryStore故意不是为生产环境而devise的。 它会在大多数情况下泄漏内存,不会通过单个进程扩展,而是用于debugging和开发。 我需要一个特定的模块来实现吗?

splice()方法工作,但是数组在执行后不会改变

我正在使用express.js(node.js)来构build一个应用程序。 我有一个产品数组在app.js文件夹中声明为会话(req.session.products)。 这是邮政路线: router.post('/remove-cart', (req, res, next) => { var product_id = req.body.product_id; //get product id from client console.log(req.session.products) var n = req.session.products.indexOf(product_id); //get position of product id in the array req.session.products.splice(n, 1); //remove it console.log(req.session.products) }); 在路由的末尾,当n = 0时logging下来: [ '1', '3', '3', '3', '3' ] [ '3', '3', '3', '3' ] 这是我期待的,但是,这不会影响主要会议(req.session.products),并不sorting“保存”它。 为什么?

JQuery和node.js中的会话处理

我正在尝试使用expressjs和jQuery的会话。 我有一个node.js服务器@ 127.0.0.1:6060与此代码: var Express = require('express'), App = Express.createServer(), Mongoose = require('mongoose'), Schema = Mongoose.Schema, ObjectId = Schema.ObjectId; App.configure(function () { App.use(Express.bodyParser()); App.use(Express.methodOverride()); App.use(Express.logger({ format: '[:remote-addr] :method :url :response-time ms' })); App.use(Express.cookieParser()); App.use(Express.session({ secret: "keyboard cat" })); // CORS App.use(function (req, res, next) { res.header('Access-Control-Allow-Origin', '*'); res.header('Access-Control-Allow-Methods', 'OPTIONS,GET,POST,PUT,DELETE'); res.header('Access-Control-Allow-Headers', 'Content-Type, X-Requested-With'); next(); }); }); […]