gpt4 book ai didi

node.js - 在 Socket.IO 上添加 cookie 值

转载 作者:搜寻专家 更新时间:2023-10-31 22:23:57 25 4
gpt4 key购买 nike

如何在 Socket.IO 上添加 cookie 值?

io.sockets.on('connection', function (client)
{
console.log(client.id);
client.handshake.headers.cookie.socketID = client.id; // not work
// client.handshake.headers.cookie("socketID",client.id); //crash

console.log(client.handshake.headers.cookie);
// The current output is:
//connect.sid=tI21xumy3u2n4QXO1GljmPAf.pzFQ1Xu%2B6bz36secu4VSCdSNU8PT1L44gQZ4kFUFQqQ
//this is express session id, and I also want to add client.id of Socket.IO.

//...........
}

我读过 http://www.danielbaulig.de/socket-ioexpress/, 但我不需要在 node.js 上进行 session 管理,而只需要像 connect.sid 一样在 cookie 中添加一个 socket.io 客户端 ID 值。

最佳答案

看看Authorization使用 Socket.io。这是它处理初始连接请求的地方,也是您可以设置响应 header 的地方。

我不确定 cookie(name,value) 简写是否有效,但您可以尝试手动设置它:

    var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000)); // set day value to expiry
var expires = "; expires="+date.toGMTString();

handshake.headers.cookie = name+"="+value+expires+"; path=/";

关于node.js - 在 Socket.IO 上添加 cookie 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10771337/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com