Node.js is an open source platform for writing server-side JavaScript applications. It is efficient, lightweight, cross-platform, and highly scalable, making it popular among developers. However, when using Node.js to build services, sometimes it is necessary to close or release the occupied port number, which requires us to master the corresponding skills.
This article will introduce how to turn off port numbers in Node.js. Before we begin, let’s review some basics of handling network requests in Node.js.
In Node.js, we can handle network requests through the http
module, which provides two core API: http.createServer()
and http.request()
.
http.createServer()
is used to create an HTTP server and specify the callback function to be executed when a client requests the server. In the callback function we can process the request and return The corresponding response; and http.request()
is used to initiate a network request. We can send a request to another server through this API and process its response.
The following is a simple HTTP server example:
const http = require('http'); const server = http.createServer((req, res) => { res.writeHead(200, {'Content-Type': 'text/html'}); res.end('<h1>Hello World</h1>'); }); server.listen(3000, () => { console.log('Server running at http://localhost:3000/'); });
In the above example, we created an HTTP server and listened on the address with port number 3000. When the client requests the server, we set the response header through res.writeHead()
and use res.end()
to send the content to the client as the response body.
When our service no longer needs to process network requests, or when it needs to be migrated to other port numbers, we need to close or release the current port number . So how do you turn off port numbers in Node.js?
In Node.js, we can shut down the server through the http.Server.close()
method. This method will stop the server and release the occupied port number. Here is an example:
const http = require('http'); const server = http.createServer((req, res) => { res.writeHead(200, {'Content-Type': 'text/html'}); res.end('<h1>Hello World</h1>'); }); server.listen(3000, () => { console.log('Server running at http://localhost:3000/'); }); // 关闭服务 setTimeout(() => { server.close(() => { console.log('Server closed.'); }); }, 5000);
In the above example, we shut down the server within 5 seconds of the service starting. In order to achieve this, we use setTimeout()
to delay the shutdown operation for 5 seconds; then use server.close()
in the callback function to close the server and output the message to the console .
It should be noted that when shutting down the server, we should wait for all pending connections to be processed before shutting down the server to ensure that all clients can successfully disconnect.
This article introduces how to close the service port number and release the corresponding resources in Node.js, realizing the stop and shutdown of network services. In actual development, we should reasonably use the network processing module in Node.js according to business needs to improve the performance and scalability of the program.
The above is the detailed content of nodejs close port number. For more information, please follow other related articles on the PHP Chinese website!