【问题标题】:Cookies between localhost and google app engine (custom google domain) not persistant本地主机和谷歌应用引擎(自定义谷歌域)之间的 cookie 不是持久的
【发布时间】:2021-07-02 01:48:28
【问题描述】:

我研究了很长时间,但找不到解决方案。 所以我的问题是:

我在本地安装了一个反应前端和一个运行良好的 nodejs/express 后端(应用程序应该从后面获取 3 个 cookie 才能正常运行) 所以我在谷歌应用引擎上部署了我的后端(带有自定义域)。

前台可以登录app获取这些cookies,但是这些cookies不是持久化的。 如果我尝试重新加载页面或单击链接(例如获取帐户),它们就会消失。

前端代码可以在这里找到:front-end 后端代码可以在这里找到:back-end

该应用程序的工作方式如下: 您尝试记录 => 如果成功,您将获得 3 个 cookie,其中一个带有 JWT。 在前面应该查看这些 cookie 以使 UI 正常工作。

感谢您的帮助。

【问题讨论】:

    标签: reactjs express cookies cross-domain


    【解决方案1】:

    好的,经过数周的研究和测试,我解决了它(在 netlify 上)。

    就像我说的那样,后端位于具有自定义域的谷歌应用引擎上,前端位于本地主机上(或 netlify 进行在线测试)。

    所以我必须设置一个自定义域来进行 netlify 并让两者都在同一个域上。他们只有 2 个不同的子域。

    我必须将域显式设置为我的 cookie(使用 js-cookie)。 所以我的 cookie(在后端)看起来像:

    cookie("groupomania", true, {
        maxAge: 7200000,
        httpOnly: false,
        sameSite: "None",
        secure: true,
        domain: "myDomain.com"
        
      })
    

    我的获取选项请求有这些选项:

    method: "POST",
      headers: { "Content-Type": "application/json" },
      credentials: "include",
      crossDomain: true,
    

    因此,如果此解释可以帮助某人,我对此感到满意。 祝你有美好的一天!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-08-15
      • 1970-01-01
      • 2011-01-28
      • 2016-06-04
      • 1970-01-01
      • 2013-08-28
      • 2021-01-23
      相关资源
      最近更新 更多