在angularjs中访问nodejs cookie

我正在构build一个简单的web应用程序,使用nodejs作为后端与angularjs前端。

使用nodejs,我在用户login后设置了一些cookie。

res.cookie(name,value) 

我为用户名和user_id创build了两个cookie。 当我看到设置的cookie,使用

 res.json(req.cookies) 

和JSON响应有实际的user_id和另一个关键connect.sid ,也许是因为我使用连接闪光灯,我不知道。

但是当我使用$ cookies.get('user_id')访问angularjs中的cookie时,这个值是一些编码值,

例如:对于实际的user_id: 571be8d34666cf69664645d5

我越来越j%3A%22571be8d34666cf69664645d5%22

我怎样才能得到实际的用户ID?

我知道真正的ID是在string之间,我可以通过使用一些string操作来得到它,但有另一种方法。

我在我的应用程序中使用passportjs,express-session,connect-flash,connect-mongo,cookieparsing器。

您可以不使用两个不同的Cookie,而是从快递中设置cookie中的对象,并且在angular度上可以通过以下方式获取Cookie:

 $cookies.getObject('cookiename',object) 

在你的情况下,要么写一个function分裂的cookie或使用JSON.parse(json)来parsing来自快递的cookie。 我做了其他方式,并设法读取JSON.parse(cookieobj.user_id)快递cookie对象

看来,从angular1.4,你应该使用$cookies.getObject('user_id')的反序列化版本的值。 首先,如果不是解决scheme,请在控制台上检查cookie的实际值,以尝试了解j:"571be8d34666cf69664645d5"来源。