1

我在我的应用程序中使用 socket.io 进行实时消息交换(大部分应用程序不是用节点编写的)。我正在寻找一种使用 Socket.io 获取特定 cookie 值的方法。

到目前为止,我最接近的是使用:client.request.headers.cookie它返回一个字符串: io=Ntp0MJVr3J_ifTKjAAAA; my_sess=c08mk6g0u66ifrjm6madt7535mknb7ur; other=fk1sq140hgj6gmp1vdcimkto71

我对所有这些值都不感兴趣,只需要 my_sess。当然,我可以拆分和解析字符串。这并不难,最直接的方法是:

var value = cookieStr.split('my_sess=')[1].split('; ')[0];

但在这样做之前,我宁愿问是否有本地方法可以给我 cookie 值。

4

1 回答 1

1

你可以安装cookie——一个用于 cookie 解析和序列化的小模块:

npm install cookie

但是,如果您使用的是 Express 框架,您可以require不安装 cookie 模块:

var cookie = require('express/node_modules/cookie');

然后使用它:

var value = cookie.parse(cookieStr).my_sess;
于 2014-07-27T11:56:47.343 回答