Setting up a basic server
Setting up a basic server in Node.js is straightforward. Here’s a step-by-step guide to help you get started:
1. Install Node.js
-
First, ensure you have Node.js installed on your system. You can download it from the official Node.js website.
-
Verify the installation by running the following commands in your terminal:
node -v npm -v
2. Create a New Directory for Your Project
-
Create a new directory for your server and navigate into it:
mkdir my-basic-server cd my-basic-server
3. Initialize a Node.js Project
-
Initialize a new Node.js project by running:
npm init -y
-
This will create a
package.json
file with default settings.
4. Create the Server File
-
Create a new file called
server.js
:touch server.js
5. Write Basic Server Code
-
Open
server.js
in your favorite text editor and write the following code:// Import the HTTP module const http = require('http'); // Define the hostname and port const hostname = '127.0.0.1'; const port = 3000; // Create the server const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Hello, World!\n'); }); // Start the server server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); });
6. Run the Server
-
Run the server using Node.js:
node server.js
-
You should see the following output in your terminal:
Server running at http://127.0.0.1:3000/
7. Test the Server
- Open your web browser and navigate to
http://127.0.0.1:3000/
. - You should see the message "Hello, World!" displayed in your browser.
Explanation of the Code:
http.createServer()
: This method creates an HTTP server that listens to server requests.req
andres
: Thereq
object represents the request from the client, and theres
object is the response that will be sent back.res.statusCode = 200;
: Sets the HTTP status code to 200, indicating success.res.setHeader('Content-Type', 'text/plain');
: Sets the response header to indicate the content type.res.end('Hello, World!\n');
: Sends the response "Hello, World!" and ends the request.
Now you have a basic server running in Node.js!
At Online Learner, we're on a mission to ignite a passion for learning and empower individuals to reach their full potential. Founded by a team of dedicated educators and industry experts, our platform is designed to provide accessible and engaging educational resources for learners of all ages and backgrounds.
Copyright 2023-2025 © All rights reserved.