@gachkydxvbgd

Express-session + socket почему не создает куки?

В общем начал покорять просторы nodejs и возникла проблема следующего характера!
socket.io + express-session

Захожу по адресу 127.0.0.1:8080 Куки создаются (connect.id)
Захожу по адресу site.dev Куки не создаются ( к сокету коннектится успешно)

Как сделать так , что бы куки создавались с site.dev?

var app = require('express')(),
    server = require("http").createServer(app),
    io = require("socket.io")(server),
    session = require("express-session")({
        secret: "my-secret",
        resave: true,
        saveUninitialized: true
    }),
    sharedsession = require("express-socket.io-session");

app.use(session);

io.use(sharedsession(session));

io.on("connection", function(socket) {
    console.log('new');
});

server.listen(8080);
  • Вопрос задан
  • 655 просмотров
Решения вопроса 1
littleguga
@littleguga
Не стыдно не знать, а стыдно не интересоваться.
Ну так поставьте server.listen(80), тогда и будет ставится кука на 80 порту.
a720285784fc413684ef11bb7eeecfc9.png

Почему так происходит?
для socket.io порт не задан и по умолчанию он равен 80, поэтому io и слушает 80 порт.
Всё связанное с сессиями крутится вокруг инстанса app и server. А он у вас на 8080 порту.
Поставьте 80 порт и будет всё работать на нем.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы