如何通过Firebase启用“ cookie会话”

时间:2018-11-05 06:44:04

标签: reactjs firebase google-cloud-functions

在生产中使用Firebase函数时,cookie-session有一个问题。我在Firebase Hosting中有一个React应用程序,而在Functions中有一个Express应用程序(我正在使用该API作为我的API),并且我创建了一个模板存储库,向所有人展示此设置,以供大家参考(https://github.com/cjmyles/firebase-react-express)。

我正在从React应用程序对/api/*进行调用调用(注意缺少完全合格的url),并且使用开发环境中的proxy配置值将请求代理到开发模式下的API package.json;并使用rewrites中的firebase.json配置值代理到生产环境中的API。

这很好,直到我开始使用会话。我有一些代码模仿使用PassportJS的登录请求,其中用户信息存储在会话中,并且这在开发模式下有效,但在生产模式下无效。我觉得这和饼干有关。我在我的Express应用中使用cookie-session,并且确保将secure标志在生产环境中设置为true(因为它通过https提供),但是我认为Cookie通过Firebase rewrites代理请求时,未正确传递给API。

我是否需要向firebase.json添加一些内容才能在生产中启用cookie-session

2 个答案:

答案 0 :(得分:1)

使用Firebase托管的重写规则代理请求后,唯一允许的cookie是__session

这在https://firebase.google.com/docs/hosting/manage-cache#using_cookies中有记录。

答案 1 :(得分:0)

您肯定会here解决您的查询。

相关问题