The httpServerResponse.writableEnded is an inbuilt application programming interface of class Server Response within http module which is used to check if response.end() has been called or not.
Syntax:
response.writableEnded
Parameters: This method does not accept any parameter.
Return Value: This method returns true if and only if response.end() has been called otherwise false.
Example 1: Filename: index.js
// Node.js program to demonstrate the // response.writableEnded APi // Importing http module const http = require( 'http' );
// Setting up PORT const PORT = process.env.PORT || 3000; // Creating http Server const httpServer = http.createServer( function (request, response) {
// Checking if the response.end has
// been called or not by using
// writableEnded API
const value = response.writableEnded;
// Display result
// by using end() api
response.end( "response.end() has been called : "
+ value, 'utf8' , () => {
console.log( "displaying the result..." );
// Closing the server
httpServer.close(() => {
console.log( "server is closed" )
})
});
});
// Listening to http Server httpServer.listen(PORT, () => { console.log( "Server is running at port 3000..." );
}); |
Run the index.js file using the below command:
node index.js
Console output:
Server is running at port 3000... displaying the result... displaying the result... server is closed server is closed
Browser Output: Paste the local host address http://localhost:3000/. In the search bar of the browser.
Output:
response.end() has been called : false
Example 2: Filename: index.js
// Node.js program to demonstrate the // response.writableEnded APi // Importing http module const http = require( 'http' );
// Request and response handler const http2Handlers = (request, response) => { // Checking if the response.end has
// been called or not by using
// writableEnded API
const value = response.writableEnded;
if (value)
response.write(
"<h1>Response.end() has been called<h1>" )
else
response.write(
"<h1>Response.end() has been not called<h1>" )
// Ending the response
response.end()
}; // Creating http Server const httpServer = http.createServer( http2Handlers).listen(3000, () => {
console.log( "Server is running at port 3000..." );
});
|
Run the index.js file using the below command:
node index.js
Console Output:
Server is running at port 3000...
Browser Output: Paste the localhost address http://localhost:3000/. In the search bar of the browser.
Output:
Response.end() has been not called
Reference: https://nodejs.org/dist/latest-v12.x/docs/api/http.html#http_response_writableended