javascript - 销毁 Node 中的请求

标签 javascript node.js stream socket.io request

最近,我一直在尝试使用 request 来理解无限长的可读流。框架。我实现此方法的方式是在一个函数中,该函数被多次调用,目的是销毁先前的请求。喜欢:

var request = require('request');

var start_request = function () {
    curr = request(url).pipe(trumpet)
    curr.destroy();
    curr = request(url + mod).pipe(trumpet);
}

但与其他 Readable 流不同的是,它似乎没有 destroy 方法,并且如果它多次调用 start_request 函数,它只会创建几个请求。我如何销毁/取消请求?

最佳答案

您可以使用.abort()来销毁请求。确保您还有一个 on('error') 处理程序。

var request = require('request');

var start_request = function () {
    curr = request(url);
    curr.on('error', function handleError(err) { /* ... */ });
    curr.pipe(trumpet);

    // Abort request
    curr.abort();

    curr = request(url + mod).pipe(trumpet);
}

关于javascript - 销毁 Node 中的请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29425248/

相关文章:

javascript - 多个 Angularjs 应用程序(驱动 Portlet)

javascript - Javascript 中的包装函数

json - 将 ObjectID 与 jwt.sign() 和 verify() 结合使用

javascript - NodeJS 系统模块的文档在哪里

使用命名空间找不到 c#asp.net web api 文件存在

c++ - 处理数字的流对象

Node.js - 如何从 process.stdin 读取长字符串(超过 10000 个字符)?

javascript - QML context2d 线宽

javascript - 如何获取一个月中不包括周末的天数

javascript - 将图像从一个文件夹复制到 digitalocean 空间中的另一个文件夹