Node.js http.ServerResponse.writableEnded Property
Last Updated :
23 Jul, 2025
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
JavaScript
// 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
JavaScript
// 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
Explore
Introduction & Installation
Node.js Modules , Buffer & Streams
Node.js Asynchronous Programming
Node.js NPM
Node.js Deployments & Communication
Resources & Tools