req.cookies和req.session有相同的参数吗?你怎么访问json?

时间:2013-10-31 00:38:35

标签: json node.js session cookies express

if (!req.session.cart) { 
            req.session.cart = {
                styles: styles,
                count: 0,
                total: 0
            };
        }

        if (!req.session.cart.styles[product]) {

            req.session.cart.styles[product] = {
                "_id": style._id,
                "a": style.a,
                "color": color,
                "price": style.price,
                "category": style.category,
                "quantity": 1
             };

        }

这里我有工作车会议,因为会话占用太多内存我决定尝试使用cookies。

我试过完全相同的格式,但req.session而不是req.cookies =不工作。

所以我做的是

res.cookie("cart", "_id": style._id,
                "a": style.a,
                "color": color,
                "price": style.price,
                "category": style.category,
                "quantity": 1)

这有效,但我无法访问任何其他字段。我如何获得访问我的json像cookie的会话?

我需要创建一个像上面的会话格式。 我做错了什么?

1 个答案:

答案 0 :(得分:0)

您可以使用您喜欢的任何字符串设置Cookie。因此,在将json设置为cookie之前对其进行字符串化。

res.cookie('cart', JSON.stringify({ 
   _id   : style._id,
   a     : style.a,
   color : color,
   // ...
}));

然后在使用它的时候,只需通过JSON.parse

对其进行分辨