express .session не будет устанавливать cook ie на iOS Safari при доступе к приложению через его домен - PullRequest
1 голос
/ 27 февраля 2020

У меня есть приложение Node / Express, размещенное на Heroku, в котором есть домен, который я купил для него. При использовании приложения на моем рабочем столе оно работает нормально. Я могу просто войти в систему, когда посещаю его домен по адресу https://myapp.app или там, где он размещен непосредственно на Heroku, https://myapp.herokuapp.com

Однако, когда я посетите приложение Safari на мобильном телефоне iOS в своем домене (https://myapp.app), оно не будет проверять подлинность запросов. Похоже, вход в систему не устанавливает повара ie. Однако, когда я захожу в приложение по URL Heroku (https://myapp.herokuapp.com), я могу войти в систему очень хорошо. После входа в систему https://myapp.herokuapp.com он позволит мне оставаться в системе https://myapp.app, и только после входа в систему уже при https://myapp.herokuapp.com позвольте мне войти на https://myapp.app.

Вот мой express код сессии. Я использую Passport. js для аутентификации.

app.use(session({ 
    secret: 'cat', 
    resave: false, 
    saveUninitialized: true,
    proxy: true,
    cookie: { 
        sameSite: 'none',
        secure: process.env.NODE_ENV == "production" ? true : false
    }
}));

Любая помощь будет принята с благодарностью.

...