Как я могу получить доступ к сессии, используя app.js в node.js - PullRequest
2 голосов
/ 17 октября 2019

Я довольно новичок в node.js и разработал приложение, которое требует от меня отправки почты пользователям. Я использую сеанс для хранения "имени пользователя" пользователя. Итак, я написал контроллер для отправки почты пользователям. Ниже приведен код

mailcontroller.js

var mongoose = require('mongoose');
var email = require('nodemailer');
var node = require('node-schedule');



mongoose.connect("URL",{ useUnifiedTopology: true, useNewUrlParser: true });
var pro = mongoose.model('signup');


var sendEmail = node.scheduleJob('*/60 * * * *', function(){
  pro.find({username:"#I NEED SESSION OBJECT'S KEY HERE"},function(err,data){
//logic
 }
};

ниже - мой app.js файл

var mailcontroller = require('./controllers/mailcontroller');
var session = require('express-session');
var redis = require('redis');
var redisStore = require('connect-redis')(session);
var client  = redis.createClient();

var app = express();

app.use(session({
  secret: 'shhhhh',
  store: new redisStore({ host: 'localhost', port: 6379, client: client,ttl : 260}),
  saveUninitialized: false,
  resave: false
}));

app.set('view engine','ejs');


app.use('/assets',express.static('./public/assets')); 
mailcontroller();
//listen to port


app.listen(3000);

Есть ли способ получить доступ к имени пользователя сеанса, используя приложение вместо req? , потому что я не могу позволить написать

module.exports = function(app){
  app.get('/',function(req,res){
    var sendEmail = node.scheduleJob('*/60 * * * *', function(){
      pro.find({username:"varunreddy"},function(err,data){
  });
};

в mailcontroller ПОТОМУ ЧТО это будет толькопланировать почту только тогда, когда пользователь входит в систему!.

1 Ответ

1 голос
/ 17 октября 2019

Пожалуйста, используйте следующую команду для получения сеанса, следующего за Ssn = req.session;Ssn.client;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...