我知道这是一个经常被问到的问题,已经被回答了很多次。但是所有这些都是从2013年开始的,从那时起,我开始认为发生了很多变化。
我正在尝试通过Node.js Express在localhost上设置cookie,后端在localhost:3000上本地运行,而前端在localhost:4200上运行(在我的dev和prod域上工作),但是我却没有成功。我试图按照此处建议的方法删除并使用所有属性,但没有成功。
这是我的标准设置
expires: new Date(Date.now() + process.env.CART_COOKIE_EXPIRES_IN * 24 * 60 * 60 * 1000),
domain: req.get('origin'),
httpOnly: true
然后我在部署的站点上设置了secure: true
。
我尝试将域设置为localhost
,.localhost
,127.0.0.1
,false
,null
。我试图删除所有属性,例如httpOnly
,domain
,仅保留到期日期,但仍然不成功。
我什至下载了dnsmasq
库并设置了本地DNS记录,因此我可以使用http://mysite.dev.test:4200/
之类的地址在地址中至少包含两个点,就像一些人在这里建议的那样,并将域设置为{{1} }或.mysite.dev.test
,但仍然没有。
我还在用于前端开发的浏览器(例如Chrome,Opera,Safari和Firefox)中尝试了所有这些方法,没什么区别。
当我遍历发现的每个主题时,我开始感到非常绝望,几乎尝试了所有可能的答案。那么,有谁愿意和我分享他/她的知识,他们知道如何使用最新版本的Cookie在localhost上进行开发?我将非常感谢。