当 Android 主屏幕 PWA 被杀死时,Cookie 会话被破坏

Posted

技术标签:

【中文标题】当 Android 主屏幕 PWA 被杀死时,Cookie 会话被破坏【英文标题】:Cookie session is destroyed when an Android home screen PWA is killed 【发布时间】:2019-08-18 06:42:07 【问题描述】:

我有一个基于会话 cookie 的身份验证的 PWA。我为我的 cookie 会话设置了一条消息,以防止在我关闭浏览器时破坏 cookie。 一切正常,除非我在 android 主屏幕上安装我的 PWA。 如果我从主屏幕快捷方式登录,然后我终止了已安装 PWA 的进程并重新打开它,我必须再次登录,我的会话 cookie 似乎丢失了。 为什么?当您杀死已安装的 PWA 进程时,cookie 会被破坏? 提前感谢您的帮助。

sessionConfig = 
    store: new RedisStore(
      host: process.env.REDIS_HOST,
      port: process.env.REDIS_PORT,
      pass: process.env.REDIS_PASSWORD
    ),
    secret: config.SESSION_SECRET,
    name: 'mcdvsid',
    saveUninitialized: false,
    resave: false,
    cookie:  secure: config.COOKIE_SECURE, maxAge: ONE_YEAR 
  ;

app.use(session(sessionConfig));

【问题讨论】:

【参考方案1】:

我自己的 PDA 遇到了这个问题...

我的解决方案是在 cookie 上显式设置 maxAge - 我相信 cookie 的默认设置将它们与会话联系起来。 这是我的应用程序中的代码 - 我正在使用 react-cookie:

cookies.set('cookie_name', cookieValue, path: '/', sameSite: 'lax', maxAge: 31536000 )

【讨论】:

以上是关于当 Android 主屏幕 PWA 被杀死时,Cookie 会话被破坏的主要内容,如果未能解决你的问题,请参考以下文章

如何从 PWA 应用主屏幕链接中删除 Chrome 徽标(Android O 预览版)

离子中的 PWA 安装提示

每次我进入主屏幕时,Android都会杀死我的应用程序

PWA-Android,iOS,MacOS,Windows Store,Chrome添加到主屏幕-具有多个域的多租户应用程序出现问题

检查用户是不是已经在 Chrome 的主屏幕上安装了 PWA?

当应用程序被杀死时,颤振本地通知不会重定向到相关屏幕