0

我正在 nodeJS 中构建一个 HTTP 服务器(作业分配),我需要使用 cookie 管理 HTTP 会话 - 对于每个会话,我都会发送一个带有UUID(字符串 ID)的 cookie,然后当我取回它时,我会重置会话的计时器。

我的问题:我应该为每个请求(例如,甚至是图像/css 请求)还是为每个页面打开一个会话?

这是我现在的代码:

socket.on('data',function(data) {
    //some code
    // if no UUID exsit in request, create one for it
    var request = new REQUEST.Request(data, resourceMap, rootFolder); //
    //response will send the UUID created/sent in request
    var response = new RESPONSE.Response(socket,request);
    session(request); // look for uuid from request in data base
} 

现在,当我加载页面时,html请求始终是第一个请求,并且会为其创建一个新的 UUID,但不会为该页面中的下一个请求(图像等)创建一个新的 UUID。此外,当我点击指向另一个页面的链接时,不会创建 UUID。

任何想法为什么?检查现有 UUID 并在不存在时添加一个的最佳位置在哪里?谢谢!

4

1 回答 1

0

您应该为一个会话创建一个会话。:) 不是每个请求。

在会话中,您可以设置 UUID。

有很多资源可以帮助你。如果您的教授允许您使用图书馆,我强烈建议您检查您的选择。这只是几个:https ://github.com/joyent/node/wiki/modules

因为这是家庭作业问题,我认为你最好只找到“答案”的方向

祝你好运

于 2013-01-23T17:51:34.180 回答