Chapter 21. Building Web Applications with Express
Express is a lightweight web framework that has been the long-standing leader in web application development in Node. Similar to Ruby’s Sinatra and Python’s Flask, the Express framework by itself is very minimal, but can be extended to build any type of web application. Express is also the backbone of batteries included in web application frameworks, such as Keystone.js, Sails, and Vulcan.js. If you are doing web application development in Node, you are likely to encounter Express. This chapter focuses on a handful of basic recipes for working with Express, which can be extended to build out all sorts of web applications.
Using Express to Respond to Requests
Problem
Your Node application needs to respond to HTTP requests.
Solution
Install the Express package:
$ npm install express
To set up Express, we require the module, call the module, and specify a port for connections in a file named index.js:
constexpress=require('express');constapp=express();constport=process.env.PORT||'3000';app.listen(port,()=>console.log(`Listening on port${port}`));
To respond to a request, specify a route and the response using Express’s .get method:
constexpress=require('express');constapp=express();constport=process.env.PORT||'3000';app.get('/',(req,res)=>res.send('Hello World'));app.listen(port,()=>console.log(`Listening on port${port}`));
To serve static files, we can specify a directory with the express.static ...