来自我控制的不同域上的API的Cookie

时间:2018-05-15 07:26:57

标签: reactjs express cookies cross-domain jwt

我在我的网站上实施登录功能,并且在将jwt令牌作为Cookie发送时遇到了一些问题。

当用户登录前端时,会发送一个POST请求,其中包含"凭据:' include'" (我使用fetch)到我的后端API,如果登录成功,它会返回一个jwt令牌。这一切都运行正常,我可以在chrome dev工具中看到cookie,并执行需要身份验证工作的操作。

然而,当我刷新网站时,jwt cookie消失了。我已经排除了过期时的错误。通过实验,我发现域名是问题所在。 Cookie的域名为" 127.0.0.1"来自本地托管的API实例,该实例与本地托管网站的域不同。如果我手动将cookie的域名更改为与网站相同,则cookie不会消失。

但这并不能永久解决我的问题,因为后端API托管在与前端不同的域上。我一直在阅读跨域请求,但我不确定如何从这里开始。我控制了前端和后端,但是我开始怀疑我是否会以错误的方式解决这个问题?最简单的解决方案是主持我的api,比如说#api.mydomain.com'代替?

0 个答案:

没有答案