【发布时间】:2021-08-25 18:37:45
【问题描述】:
我有一个这样设置的快速服务器:
const express = require("express");
const app = express();
const cors = require("cors");
const cookieParser = require("cookie-parser");
app.use(express.json());
app.use(cors());
app.use(cookieParser());
app.post("/", (req, res) => {
console.log(req.cookies)
res.send();
});
app.listen(5000);
它的输出是一个空对象,但在我的客户端(即发出请求)中,如果我记录document.cookie,它会打印一个包含许多值的字符串。知道为什么服务器日志中没有显示相同的内容吗?
EDIT`:确切的日志是[Object: null prototype] {}
这是请求:
const login = async () => {
const resp = await fetch("http://localhost:5000", {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({msg: "example"}),
});
};
login();
【问题讨论】:
-
你能给我看看饼干吗?
-
你的意思是当我在浏览器控制台中输入
document.cookie时记录了什么?` -
是的,cookie的格式是这样的:
somethin=something -
好的,你去吧 id=2; csrftoken=plLDHj4jaAaH3Uow5Cj3cpBtupcIBIy8892834GfE9PLY8CF7oofwAWGveKK"
-
你是否将cookie附加到请求的头部?
标签: javascript node.js express http cookies