Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js:请求是唯一的吗?_Node.js - Fatal编程技术网

Node.js:请求是唯一的吗?

Node.js:请求是唯一的吗?,node.js,Node.js,在node.js中,当使用https模块和createserver时。当用户向httpsserver发出请求时,请求是唯一的还是不同的请求可以具有相同的请求(id?)。如果是唯一的,应该使用哪个属性 http请求处理程序中的request参数是一个Javascript对象,每个对象都是唯一的。它们从不重复使用。该对象已记录在案 node.js http库中没有请求ID。如果您想创建自己的请求ID,您可以自己创建,只需指定一个符号作为请求对象的属性。可以选择任何与现有属性不冲突的属性名称 由于这是

在node.js中,当使用https模块和createserver时。当用户向httpsserver发出请求时,请求是唯一的还是不同的请求可以具有相同的请求(id?)。如果是唯一的,应该使用哪个属性

http请求处理程序中的
request
参数是一个Javascript对象,每个对象都是唯一的。它们从不重复使用。该对象已记录在案

node.js http库中没有请求ID。如果您想创建自己的请求ID,您可以自己创建,只需指定一个符号作为请求对象的属性。可以选择任何与现有属性不冲突的属性名称

由于这是一个有点不寻常的请求,我想问您为什么要尝试这样做,因为可能有更好的方法来解决您的问题,而不是尝试创建一个请求ID。如果您显示您的实际代码和您尝试执行的操作,我们可能会更具体地帮助您


如果您使用的是Express,您可以使用如下中间件设置自己的请求ID:

// set request ID
let reqCntr = 0;
app.use((req, res, next) => {
    req._localID = reqCntr++;
    next();
});

只需将此中间件放在希望使用该id的任何其他请求处理程序之前。您可以选择任何不冲突的属性名称。我选了
\u localID

谢谢!我们还没有代码。我们还在设计。我们尝试将id仅用于日志记录目的。当我们意识到tcp连接可以在一个请求存在的时间更长的情况下保持打开状态时,出现了这种情况。在同一个连接上,浏览器可以发送多个请求。@ajlind-我添加了一个示例中间件,可以生成请求ID。