javascript - document.cookie 和 res.cookie 之间的区别

标签 javascript node.js cookies

在客户端计算机中制作cookie时,

我只知道 res.cookie

例如(在nodejs-express中),

app.get('/', (req, res) => {
    res.cookie('count', 1);
    res.send('something');
}

但我发现我也可以使用 document.cookie 来制作 cookie。

那么这两者在制作cookie时的主要区别是什么?

(同样在读取 cookie 时,req.cookies 与 document.cookie)

document.cookie 是比 res.cookies 或 req.cookies 更大的概念吗? 不需要任何 req、res 参数,所以每当想要制作 cookie 时我就可以只使用 document.cookie 吗?

我已经读过w3school关于document.cookies、req.cookies、res.cookies的文章。但无法弄清楚它们之间存在的差异。

谢谢。

最佳答案

Express.js 上下文中,Node 服务器无法访问 document 对象。所以通常使用cookie-parser中间件,我们就可以访问请求的cookie。

基于 Express.js 文档,

res.cookie(名称,值[,选项]):

Sets cookie name to value. The value parameter may be a string or object converted to JSON.

req.cookies:

When using cookie-parser middleware, this property is an object that contains cookies sent by the request. If the request contains no cookies, it defaults to {}.

关于javascript - document.cookie 和 res.cookie 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47353602/

相关文章:

javascript - 在 div MVC 中加载部分 View

javascript - jQuery Ajax 调用函数

javascript - Node JS进程内存不足

javascript - 将超集数组叠加到顺序/顺序很重要的子集数组上(在 Javascript 中)

c# - 如何从 .Net 中删除 cookie

javascript - jQuery.cookie : no update of the cookie despite a very simple code

javascript - Internet Explorer 8 中 jQuery 的 .find().length 问题

javascript - 未捕获的类型错误 : Cannot read property 'length' of null

javascript - 这些 Buffer.from toString ('base64' )无法正确转换 - 我缺少什么?

javascript - 为什么 req.cookies 未定义?