我正在尝试使用credentials: include
选项将cookie附加到获取请求。
在我的开发环境中,cookie毫无问题地附加在localhost
上的默认节点服务器上。
但是当我将其推送到测试环境(与开发环境相同的环境设置)时,cookie不会附加到请求中。
项目的前端使用gatsby
构建,后端使用express
构建。
我正在使用后端的cors-npm
包来处理跨源请求。
示例请求(开发环境):
fetch(
"http://localhost:3000/endpoint",
{
method: "post",
headers: {
"Content-Type": "application/json",
},
credentials:"include",
body: JSON.stringify(body),
}
);
我已将HTTP响应标头(开发环境)配置为返回
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: http://localhost:8000
在生产环境中,我使用的是http://example.com
而不是http://localhost
我缺少什么?如何解决?