🚀 DAY 5 OF LAUNCH WEEK: Introducing Socket Firewall Enterprise.Learn more →
Socket
Book a DemoInstallSign in
Socket

clone-response

Package Overview
Dependencies
Maintainers
2
Versions
11
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

clone-response

Clone a Node.js HTTP response stream

latest
Source
npmnpm
Version
2.0.0
Version published
Weekly downloads
14M
10.97%
Maintainers
2
Weekly downloads
 
Created
Source

clone-response

Clone a Node.js HTTP response stream

Returns a new stream and copies over all properties and methods from the original response giving you a complete duplicate.

This is useful in situations where you need to consume the response stream but also want to pass an unconsumed stream somewhere else to be consumed later.

Install

npm install clone-response

Usage

import http from 'node:http';
import cloneResponse from 'clone-response';

http.get('http://example.com', response => {
	const clonedResponse = cloneResponse(response);
	response.pipe(process.stdout);

	setImmediate(() => {
		// The response stream has already been consumed by the time this executes,
		// however the cloned response stream is still available.
		doSomethingWithResponse(clonedResponse);
	});
});

Please bear in mind that the process of cloning a stream consumes it. However, you can consume a stream multiple times in the same tick, therefore allowing you to create multiple clones. For example:

const clone1 = cloneResponse(response);
const clone2 = cloneResponse(response);
// The response can still be consumed in this tick but cannot be consumed if passed
// into any async callbacks. clone1 and clone2 can be passed around and be
// consumed in the future.

API

cloneResponse(response)

Returns a clone of the passed in response stream.

response

Type: Stream

A Node.js HTTP response stream to clone.

Keywords

clone

FAQs

Package last updated on 17 Jul 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts