In the Basic Node and Express challenges we learned to create routes with this syntax:
app.get("/", (req, res) => {
// code
});
});
But in the Advanced Node and Express challenges they started using this syntax:
app.route('/')
.get((req, res) => {
// code
});
What exactly is the difference between these to styles of creating routes.
1 Like
Hello! Welcome to the community !
In the cases you expose, there’s no major difference other than the possibility of declaring the route once, and then adding the methods:
app.route('/route/one')
.get((req, res) => {
// Do something for GET requests
})
.post((req, res) => {
// Do something for POST requests
})
.put((req, res) => {
// Etc.
});
This is a way of grouping the routes and their operations.
The Express.Router (app.route
) allows you to make your app modular, having a small subset of the functions provided by the main app (app = express()
).
As stated on the documentation of express:
A router
object is an isolated instance of middleware and routes. You can think of it as a “mini-application,” capable only of performing middleware and routing functions.
5 Likes
Thank you for your answer!
1 Like