express

Explore Express.js with our comprehensive cheatsheet. Master Node.js framework APIs, middleware, routing, requests, and responses. Free and easy to use!

Express

Express.js is a minimal and flexible Node.js web application framework that provides a robust set of features for web and mobile applications. This cheatsheet provides a quick reference to the most commonly used APIs, methods, and properties in Express.js. Use this guide to quickly look up syntax and options as you develop your Node.js applications.

Express.js API Reference

Comprehensive guide to Express.js APIs, including global objects and application properties.

/* *******************************************************************************************
 * API
 * http://expressjs.com/en/api.html
 * ******************************************************************************************* */
`npm i express --save` or`yarn add -D express` `(-D saves it as a dev dependency)`
`yarn add -D @types/express` `(Installing for TS)`

const express = require("express"); // Importing the express library.
const app = express(); // Intializing the imported express application

/* *******************************************************************************************
 * GLOBAL OBJECTS
 * http://expressjs.com/en/api.html#express.json
 * ******************************************************************************************* */

Methods

`express.json([options]);`

options: `
inflate                   // to manage the deflated bodies like enabling and disabling

limit                     // Controls the maximum request body size.

reviver                   // It is passed directly to JSON.parse as an second argument

type                      // This is used to determine the type of middleware will parse

verify                    // It is an undefined function which used to verify the middleware parsing.

`;

`express.raw([options]);`

options: `
inflate                   // to manage the deflated bodies like enabling and disabling

limit                     // Controls the maximum request body size.

type                      // This is used to determine the type of middleware will parse

verify                    // It is an undefined function which used to verify the middleware parsing.
`;

`express.Router([options]);`

options: `
caseSensitive             //Enables case sensitivity

mergeParams               //if param names of child and parent are conflicted then the child takes the precedence

strict                    // Enables Strict routing
`;

`express.static(root, [options]);`

options: `
dotfiles                 // determines how dotfiles are used

etag                     // Operates etag generation

extensions               // Operates file extension fallback

fallthrough              //	Enable or disable the immutable directive in the Cache-Control response header

index                    // sends the specified directory index file

LastModified             // sets the Last-Modified header to the last modified date

setHeaders               // Function for setting HTTP headers to serve with the file
`;

`express.text([options]);`

options: `
defaultCharset          // Sets the default charset for the text context.

inflate                 // to manage the deflated bodies like enabling and disabling

limit                   // Controls the maximum request body size.

type                    // This is used to determine the type of middleware will parse

verify                  // It is an undefined function which used to verify the middleware parsing.
`;

`express.urlencoded([options]);`

options: `
extended                // it allows to choose between parsing the URL-encoded data or the qs library

parameterLimit          // It controls the no of params.

inflate                 // to manage the deflated bodies like enabling and disabling

limit                   // Controls the maximum request body size.

type                    // This is used to determine the type of middleware will parse

verify                  // It is an undefined function which used to verify the middleware parsing.
`;

Application

Details on Express application settings and properties.

Properties

`app.local`;

`app.locals.title = "My Cheatsheet";

console.dir(app.locals.title)`;                     `// Creating objects with local variables`

app.mountpath`

``app.mountpath``const admin = express()
admin.get('/', function(req,res){
    console.log(admin.mountpath)
    res.send('Admin Homepage')
})                            

app.use('<admin dir>', admin)`;                    `// Mounting a sub - app`

``Event``

`admin.on('mount', (parent){
    console.log('Admin Mounted')
})`                                                `// Mounting on a parent app`

Methods

`app.get('/', function(req, res){
    res.send('GET request to message')
})`                                               `// get requests to the specified path`

`app.post('/', function(req,res){
    res.send('POST request to a webpage')
})`                                               `// post request to the specified path`

`app.put('/', function(req,res){
    res.send('PUT request to a webpage')
})`                                               `// post request to the specified path`

`app.delete('/', function(req,res){
    res.send('DELETE request to a webpage')
})`                                               `// delete request to the specified path`

`app.all('/', function(req,res,next){
    console.log('Accessing the secret section....')
    next()
})`                                               `// Routing all types of HTTP request`

`app.param('user', function(req,res,next){
    User.find(id, function(err, user){
        if(err){
            next(err)
        } else if (user){
            req.user = user
            next()
        } else {
            next(new Error('Failed to load user'))
        }
    })
})`                                               `// Adding callback trigger to route parameters`

`app.use(function(req,res,next){
    res.send('Hey There!')
})`                                               `// To Invoke the middleware layer that you want to add`

Request

Details on Express request properties and methods.

Methods

`req.get('content-type')`                         `// Returns the specified HTTP req header`

`req.accepts('html')`                             `// Checks if the specified content types are available or not`

`req.is('json')`                                  `// Requests the matching content-type`
    
`var range = req.range(1000)
if (range.type === 'bytes'){
    range.forEach(function(r){
        // Your code
    })
}`                                                `// Range header parser`

Properties

`req.param('name')`                               `// Requests the param name when present`
    
`app.post('/', function (req, res, next) {
    console.log(req.body)
    res.json(req.body)
})`                                                `// Data submitted in the request body`

`console.dir(req.cookies.name)`                    `// Contains cookies sent by the request`

`console.dir(req.query.q)`                         `// Query string parameter in the route`

`console.log(req.route)
res.send('GET')`                                   `// Outputs all the layer, methods, path`

`console.dir(req.signedCookies.user)`              `// Logs all the signed cookies sent by the request`

Response

Details on Express response methods.

Methods

`res.redirect('https://google.com')`               `// Redirects to the intended page`

`res.send({message: 'Awesome Stuffs'})`            `// Response to the webpage` 
        
`res.json({alert: 'awesomecheatsheets'})`          `// Response in JSON type`

`const file = req.params.name;
res.sendFile(file, options, function(err){
    if(err){
        next(err)
    }else{
        console.log('Sent:', file)
    }
})`                                                `// Sends file to the intended path`

`res.render('index')`                              `// Rendering the intended file`

BodyParser

Details on using BodyParser middleware.

`const BodyParser = require('body-parser')
app.use(BodyParser.json())
app.use(BodyParser.urlencoded({
    extended: true
}))`                                               `// Parses incoming request bodies`

For more information, refer to the official Express.js documentation and the BodyParser documentation.