【发布时间】:2017-11-25 21:09:29
【问题描述】:
下面是我用来在单个响应中设置 cookie 和重定向链接的代码,但只有其中一个可以工作。如果 statusCode 为 301/302,则重定向正在发生,但未设置 cookie。如果 statusCode 为 200 cookie 已设置但重定向不起作用。有谁知道如何在一个请求中同时使用两者?我应该更改 StatusCode 一些状态代码不允许设置 cookie 吗?
const response = {
statusCode: 302,
headers: {
"Access-Control-Allow-Origin" : "*",
"Access-Control-Allow-Credentials" : true,
"Set-Cookie": 'data='+data,
"Location":"http://localhost:8040/#/dashboard",
},
body: JSON.stringify({
message: data,
}),
};
callback(null, response);
我正在使用nodejs的无服务器框架。
【问题讨论】:
-
显然可以这样做:Sending browser cookies during a 302 redirect。所以,也许问题更多是关于如何在你的框架中做到这一点?我建议您确切告诉我们您使用的是什么框架。
-
我正在使用无服务器框架...serverless framework,我可以单独实现它们,但总体上它不会发生
-
当您重定向时,您是否更改了以前的域、端口或协议?或者,你只是改变路径?
-
"localhost:8040/#/dashboard" -- 这就是我提到的,它指向不同的域。就像在新标签中打开一个网址一样
-
我怀疑这是你的问题。不允许服务器在任何随机域中设置 cookie。
标签: javascript node.js cookies serverless-framework