当前位置: 首页 > 面试题库 >

node.js-请求-如何“ emitter.setMaxListeners()”?

南宫建白
2023-03-14
问题内容

当我使用node.js’request’模块对某个URI进行GET时;

var options = {uri:"aURI", headers:headerData};
request.get(options, function (error, response, body) {
}

错误消息是:

[Error: Exceeded maxRedirects. Probably stuck in a redirect loop.]

并且还有以下消息:

"(node) warning: possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners() to increase limit."

我该怎么办setMaxListeners


问题答案:

我强烈建议不要使用以下代码:

process.setMaxListeners(0);

没有合理的警告。在大多数情况下,这是因为代码中隐藏了错误。取消限制将消除警告,但不会消除其原因,并防止警告您资源泄漏的源头。

如果您出于正当理由达到了限制,请在函数中输入一个合理的值(默认值为10)。

同样,要更改默认值,也不必弄乱EventEmitter原型。您可以像这样设置defaultMaxListeners属性的值:

require('events').EventEmitter.defaultMaxListeners = 15;


 类似资料:
  • 问题内容: 我在使用模块的某个页面上收到。根据我在Google上发现的信息,这是由服务器响应错误/格式错误引起的,但是服务器响应不受我的控制。我可以将请求配置为忽略无效的标头,还是只给我整个原始响应进行处理? 问题答案: 解决方案是该库:https : //www.npmjs.com/package/http-parser-js 因此,要解决您的问题: npm安装http-parser-js 在r

  • 问题内容: 我正在使用Mikeal的请求(https://github.com/mikeal/request)向服务器发出https请求。但是,我不断收到CERT_HAS_EXPIRED的授权错误。 我尝试将strictSSL设置为true和false,两者都输出相同的CERT_HAS_EXPIRED错误。是什么导致此问题,并且有什么方法可以在nodejs中进行修复? 问题答案: 将其添加到文件顶

  • 问题内容: 如何在node.js中使用数据发出出站HTTP POST请求? 问题答案: 这是一个使用node.js向Google Compiler API发出POST请求的示例: 我已经更新了代码,以显示如何从文件而不是硬编码的字符串发布数据。它使用async 命令来实现此目的,并在成功读取后发布实际代码。如果有错误,则抛出该错误,如果没有数据,则该过程以负值退出以指示失败。

  • 主要内容:获取GET请求内容,实例,实例,获取 POST 请求内容,基本语法结构说明,实例在很多场景中,我们的服务器都需要跟用户的浏览器打交道,如表单提交。 表单提交到服务器一般都使用 GET/POST 请求。 本章节我们将为大家介绍 Node.js GET/POST请求。 获取GET请求内容 由于GET请求直接被嵌入在路径中,URL是完整的请求路径,包括了?后面的部分,因此你可以手动解析后面的内容作为GET请求的参数。 node.js 中 url 模块中的 parse 函数提供了这个

  • 在很多场景中,我们的服务器都需要跟用户的浏览器打交道,如表单提交。 表单提交到服务器一般都使用 GET/POST 请求。 本章节我们将为大家介绍 Node.js GET/POS T请求。 获取GET请求内容 由于GET请求直接被嵌入在路径中,URL是完整的请求路径,包括了?后面的部分,因此你可以手动解析后面的内容作为GET请求的参数。 node.js 中 url 模块中的 parse 函数提供了这

  • 问题内容: 问题很简单。我想使用Node.js服务器作为代理,以记录,认证HTTP查询并将其转发到后端HTTP服务器(PUT,GET和DELETE请求)。 我应该为此使用哪个库?恐怕找不到。 问题答案: NodeJS支持将http.request作为标准模块:http ://nodejs.org/docs/v0.4.11/api/http.html#http.request