how to create node js server using express code example
Example 1: express.js server
const express = require("express");
const app = express();
app.get("/", (req, res) => {
res.send("This is home page.");
});
app.post("/", (req, res) => {
res.send("This is home page with post request.");
});
const PORT = 3000;
app.listen(PORT, () => {
console.log(`Server is running on PORT: ${PORT}`);
});
Example 2: how to create server in node js using express
You can run the application generator with the npx command (available in Node.js 8.2.0).
$ npx express-generator
For earlier Node versions, install the application generator as a global npm package and then launch it:
$ npm install -g express-generator
For example, the following creates an Express app named myapp. The app will be created in a folder named myapp in the current working directory and the view engine will be set to Pug:
$ express --view=pug myapp
create : myapp
create : myapp/package.json
create : myapp/app.js
create : myapp/public
create : myapp/public/javascripts
create : myapp/public/images
create : myapp/routes
create : myapp/routes/index.js
create : myapp/routes/users.js
create : myapp/public/stylesheets
create : myapp/public/stylesheets/style.css
create : myapp/views
create : myapp/views/index.pug
create : myapp/views/layout.pug
create : myapp/views/error.pug
create : myapp/bin
create : myapp/bin/www
Then install dependencies:
$ cd myapp
$ npm install
On MacOS or Linux, run the app with this command:
$ DEBUG=myapp:* npm start
On Windows Command Prompt, use this command:
> set DEBUG=myapp:* & npm start
On Windows PowerShell, use this command:
PS> $env:DEBUG='myapp:*'; npm start
Then load http://localhost:3000/ in your browser to access the app.
The generated app has the following directory structure:
.
├── app.js
├── bin
│ └── www
├── package.json
├── public
│ ├── images
│ ├── javascripts
│ └── stylesheets
│ └── style.css
├── routes
│ ├── index.js
│ └── users.js
└── views
├── error.pug
├── index.pug
└── layout.pug
7 directories, 9 files
The app structure created by the generator is just one of many ways to structure Express apps. Feel free to use this structure or modify it to best suit your needs.
Example 3: create server with express js
const express = require('express');
const server = express();
const PORT = 3000;
server.use(express.json());
server.get('/', (req, res) => {
return res.send("<h1 style='text-align: center;'>Hello,<br />from the Express.js server!</h1>");
})
server.get('/about', (req, res) => {
return res.send('<h2 style="text-align:center">About us</h2>');
})
server.use((req, res, next) =>{
res.status(404);
if (req.accepts('html')) {
res.sendFile(__dirname + '/error404.html');
return;
}
else if (req.accepts('json')){
res.send({
status: 404,
error: 'Not found'
});
return;
}
else {
res.type('txt').send('Error 404 - Not found');
}
});
server.listen(PORT, () => {
console.log(`Server is running on port ${PORT}`);
});
Example 4: setup node js express basic setup
npm init -y
npm i express