javascript - 引用错误: request is not defined in NodeJS Session

标签 javascript node.js session express authentication

我是 NodeJS 新手,我正在尝试使用 session 。但我被这个错误困住了。任何形式的帮助表示赞赏。

代码:-

var express = require('express');
var jsonFile = require('jsonfile');
var NodeSession = require('node-session');
var router = express.Router();

session = new NodeSession({secret: 'Q3UBzdH9GEfiRCTKbi5MTPyChpzXLsTD', 'lifetime': 60 * 1000, 'secure': true, 'encrypt': true});

session.startSession(request, response, function () {
    // server handler goes here
    // req.session available
});

function restrict(req, res, next) {
    if (req.session.has('sessnm')) {
        next();
    } else {
        res.redirect('/');
}

它向我显示了这一行中的错误:-

session.startSession(request, response, function () {

最佳答案

据我所知,startSession 应该在请求和响应可用的上下文中使用,例如作为中间件:

app.use(function (req, res, next) {
    session.startSession(req, res, function() {
        // ...        
        next();
    });
})

其中 app 是您的服务器实例,例如app=express()

关于javascript - 引用错误: request is not defined in NodeJS Session,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44177087/

相关文章:

javascript - 有没有一种优雅的方法来检查对象中是否存在键和值然后使用它?

javascript - 使用创建按钮重定向到另一个页面

PHP 自定义 session.serialize_handler JSON

php - 更好的管理员安全性

javascript - 将输入标签值作为 href 参数传递给

javascript - 显示日期至月 dd、yyyy

node.js - DocuSign 嵌入式签名 API

javascript - 为什么在 karma 和 jasmine 中运行测试时 fs.readFile 不是一个函数?

session - Laravel 5.1 使用 session.upload_progress

.net - Azure 中的 session 超时