//вырезал все нахуй, не могу понять вот что:
const express = require('express');
const passport = require('passport'); //если закоментировать - это в обработчике выкидывает ошибку о том что req.logout is not a function
const session = require('express-session');
const cookieParser = require('cookie-parser');
const app = express();
app.use(cookieParser());
app.use(
session({
secret: 'cat',
cookie: { maxAge: 60000 * 1000 },
resave: false,
saveUninitialized: false
})
);
app.get('/', function (req, res) {
console.log(req.session);
console.log(req.logout) //[Function];
req.logout(); // откуда эта хуйня взялась? Этого метода нет в стандартном объекте express.req
// это метод passportjs - но я его просто реквайрю, т в данной ситуаци нигде не использую
//если const passport = require('passport') закоментировать - то все идет как нужно выпадает ошибка req.logout is not a function
// и самая дичь если const passport = require('passport') переименовать допустим в const tormoz = require('passport') - req.logout() вызывается
});
//как это все блядь работает?
app.listen(3000, function () {
console.log('Example app listening on port 3000!');
});
Ly/QstGL0YDQtdC30LDQuyDQstGB0LUg0L3QsNGF0YPQuSwg0L3QtSDQvNC+0LPRgyDQv9C+0L3Rj9GC0Ywg0LLQvtGCINGH0YLQvjoKY29uc3QgZXhwcmVzcyA9IHJlcXVpcmUoJ2V4cHJlc3MnKTsKCgpjb25zdCBwYXNzcG9ydCA9IHJlcXVpcmUoJ3Bhc3Nwb3J0Jyk7IC8v0LXRgdC70Lgg0LfQsNC60L7QvNC10L3RgtC40YDQvtCy0LDRgtGMIC0g0Y3RgtC+INCyINC+0LHRgNCw0LHQvtGC0YfQuNC60LUg0LLRi9C60LjQtNGL0LLQsNC10YIg0L7RiNC40LHQutGDINC+INGC0L7QvCDRh9GC0L4gcmVxLmxvZ291dCBpcyBub3QgYSBmdW5jdGlvbgpjb25zdCBzZXNzaW9uID0gcmVxdWlyZSgnZXhwcmVzcy1zZXNzaW9uJyk7CmNvbnN0IGNvb2tpZVBhcnNlciA9IHJlcXVpcmUoJ2Nvb2tpZS1wYXJzZXInKTsKCmNvbnN0IGFwcCA9IGV4cHJlc3MoKTsKCmFwcC51c2UoY29va2llUGFyc2VyKCkpOwoKYXBwLnVzZSgKICBzZXNzaW9uKHsKICAgIHNlY3JldDogJ2NhdCcsCiAgICBjb29raWU6IHsgbWF4QWdlOiA2MDAwMCAqIDEwMDAgfSwKICAgIHJlc2F2ZTogZmFsc2UsCiAgICBzYXZlVW5pbml0aWFsaXplZDogZmFsc2UKICB9KQopOwoKYXBwLmdldCgnLycsIGZ1bmN0aW9uIChyZXEsIHJlcykgewogIGNvbnNvbGUubG9nKHJlcS5zZXNzaW9uKTsKICBjb25zb2xlLmxvZyhyZXEubG9nb3V0KSAvL1tGdW5jdGlvbl07CiAgcmVxLmxvZ291dCgpOyAvLyDQvtGC0LrRg9C00LAg0Y3RgtCwINGF0YPQudC90Y8g0LLQt9GP0LvQsNGB0Yw/INCt0YLQvtCz0L4g0LzQtdGC0L7QtNCwINC90LXRgiDQsiDRgdGC0LDQvdC00LDRgNGC0L3QvtC8INC+0LHRitC10LrRgtC1IGV4cHJlc3MucmVxCiAgLy8g0Y3RgtC+INC80LXRgtC+0LQgcGFzc3BvcnRqcyAtINC90L4g0Y8g0LXQs9C+INC/0YDQvtGB0YLQviDRgNC10LrQstCw0LnRgNGOLCDRgiDQsiDQtNCw0L3QvdC+0Lkg0YHQuNGC0YPQsNGG0Lgg0L3QuNCz0LTQtSDQvdC1INC40YHQv9C+0LvRjNC30YPRjgogIC8v0LXRgdC70LggY29uc3QgcGFzc3BvcnQgPSByZXF1aXJlKCdwYXNzcG9ydCcpINC30LDQutC+0LzQtdC90YLQuNGA0L7QstCw0YLRjCAtINGC0L4g0LLRgdC1INC40LTQtdGCINC60LDQuiDQvdGD0LbQvdC+INCy0YvQv9Cw0LTQsNC10YIg0L7RiNC40LHQutCwIHJlcS5sb2dvdXQgaXMgbm90IGEgZnVuY3Rpb24KCS8vINC4INGB0LDQvNCw0Y8g0LTQuNGH0Ywg0LXRgdC70LggY29uc3QgcGFzc3BvcnQgPSByZXF1aXJlKCdwYXNzcG9ydCcpINC/0LXRgNC10LjQvNC10L3QvtCy0LDRgtGMINC00L7Qv9GD0YHRgtC40Lwg0LIgY29uc3QgdG9ybW96ID0gcmVxdWlyZSgncGFzc3BvcnQnKSAtIHJlcS5sb2dvdXQoKSDQstGL0LfRi9Cy0LDQtdGC0YHRjwp9KTsKCi8v0LrQsNC6INGN0YLQviDQstGB0LUg0LHQu9GP0LTRjCDRgNCw0LHQvtGC0LDQtdGCPwoKYXBwLmxpc3RlbigzMDAwLCBmdW5jdGlvbiAoKSB7CiAgY29uc29sZS5sb2coJ0V4YW1wbGUgYXBwIGxpc3RlbmluZyBvbiBwb3J0IDMwMDAhJyk7Cn0pOw==