我在尝试从响应标头设置cookie时遇到问题,我可以看到set-cookie键,其中包含我指定的所有选项,但由于某种原因,它没有在浏览器中设置(Chrome)。
我使用koajs设置cookie,内容如下:
this.cookies.set(’test-cookie’, ‘valid’, { domain: ‘.test.io’, httpOnly: false, maxAge: 604800000 })
这是我在回复中得到的:
GET https://api.test.io/conversion
set-cookie: test-cookie=valid; path=/; expires=Mon, 12 Jun 2017 14:23:40 GMT; domain=.test.io;
我有另一个请求(GET https://identity.test.io/identity)执行类似请求并具有相同的set-cookie响应,我可以在chrome dev工具中看到此cookie。
唯一的区别是api.test.io经历了几次重定向(301),但是我们认为这不是问题,因为我们仍然在最终响应头中看到了set-cookie密钥。
nb:这个cookie需要跨多个站点工作,这就是我们不设置安全,签名或httpOnly的原因。
答案 0 :(得分:0)
我的答案严格用于本地测试,但我将其放在此处作为答案,因为您的问题正是我在解决该问题之前所寻找的。 p>
我的php.ini文件的session.auto_start设置设置为0。我将其设置为1,浏览器开始保存响应头中的cookie。 (将WAMP与PHP 7.0.29结合使用)