【问题标题】:Retrieve cookie from headers从标头中检索 cookie
【发布时间】:2014-01-04 19:53:47
【问题描述】:

在尝试从套接字 IO 请求中检索 cookie ID 时,我一直在使用握手标头请求。

socket.handshake.headers.cookie;

虽然它附加到字符串“cookieName”,但输出确实返回了 cookie ID。

cookieName=6941262055188417

要检索数字,我将使用字符串格式化工具在

之后仅保留值
=

有没有更时尚/更优雅的方式来做到这一点?

【问题讨论】:

  • 确保你也用“&”分割。
  • 所以拆分字符串最好?
  • 我会先拆分“&”,然后拆分“=”——记住,cookie 可能不止一个。也许其他人会有不同的答案。

标签: node.js cookies socket.io


【解决方案1】:
var string = 'cookieName=12345';
string.split('=')[1]; // 12345
string.substring(11); // 12345
string.substring(string.indexOf('=') + 1); // 12345

但正如Elliott Frisch 所说,如果您有多个cookie,您可以使用例如本机querystring 模块来解析它们:

var querystring = require('querystring');
querystring.parse(string, '&', '='); // {"cookieName": "12345"}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-08
    • 1970-01-01
    • 2011-08-02
    • 1970-01-01
    • 2014-11-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多