gpt4 book ai didi

javascript - 停止监听请求库中的完整事件

转载 作者:行者123 更新时间:2023-12-02 23:38:32 24 4
gpt4 key购买 nike

目前,我有以下nodejs代码

'use strict';
const request = require('request');
var stream;

function connect() {
stream = request({
url: 'https://cloud-sse.xxx.com/stable/stocksUS?token=YOUR_TOKEN&symbols=spy',
headers: {
'Content-Type': 'text/event-stream'
}
})
}

stream.on('complete', () => {
console.log("Reconnecting");
connect();
});

在某些时候,我想停止监听 complete 事件。

我想知道,实现这一目标的正确方法是什么?

最佳答案

您可以使用removeListener() ,但您必须避免使用匿名函数( read here )。

示例:

'use strict';
const request = require('request');
var stream;

function connectHandler()
{
console.log("Reconnecting");

stream = request({
url: 'https://cloud-sse.xxx.com/stable/stocksUS?token=YOUR_TOKEN&symbols=spy',
headers: {
'Content-Type': 'text/event-stream'
}
});
}

stream.on('complete', connectHandler);

稍后,当您想要删除监听器时,您可以执行此操作:

stream.removeListener('complete', connectHandler);

如果您不介意删除 complete 事件上的所有监听器,您随时可以这样做

stream.removeAllListeners('complete');

关于javascript - 停止监听请求库中的完整事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56190760/

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