Udemy
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
RESTful Web API Design with Node.js 12
Rating: 1.0 out of 5(1 rating)
13 students

RESTful Web API Design with Node.js 12

Leverage the power of Node.js 12 to build RESTful apps
Last updated 3/2020
English
English

What you'll learn

  • Prepare an optimal development environment and set your REST APIs
  • Dive deeper into building APIs and implementing RESTful best practices
  • Integrate a NoSQL database to learn how to use the MongoDB Atlas Cloud Services Implement caching, filtering and pagination of data
  • Secure your Node .js API with CORS, rate limiting, authentication and authorization using JSON Web Tokens
  • Implement processes for deploying your API to production on Heroku and AWS
  • Make your applications backward-compatible by setting accurate HTTP status codes
  • Manage Node .js processes for production using PM2
  • Transform your API into Docker microservices
  • Build your API Docker image and publish on Docker Hub
  • Build multi-container Docker stacks using Docker compose
  • Use the AWS Cloud services offering

Course content

8 sections • 46 lectures • 6h 27m total length
  • The Course Overview3:03

    This video will give you an overview about the course.

  • New Features in Node.js 124:12

    Explore the Node 12 new features.

  • Installing Node.js 12 with NVM3:03

    See the rapid Node 12 installation with NVM.

       •  Install NVM

       •  Install Node 12

  • Setting Up a Development Environment5:10

    Learn the automated development project setup here.

       •  Plan the project architecture

       •  Create Bash script

       •  Run project setup script

  • Handling HTTP Requests10:55

    In this video, see how to handle HTTP request to REST API.

       •  Create Express server instance

       •  Register Express middleware

       •  Register route handlers

  • Modularizing Code and ES6 Modules with ESM11:29

    Use ES6 modules and modularize Express project to separate business logic from API routes.

       •  Integrate ESM package to use ES6 modules

       •  Create Express router and controllers

       •  Register router to URL prefix

  • Testing Node.js Server with SuperTest9:36

    Implement integration testing with SuperTest/ debug and development scripts.

       •  Import Mocha/ SuperTest/ nodemon

       •  Create NPM scripts with ESM integration

       •  Run tests with Mocha

  • Deploying an Application on Heroku11:46

    Deploy production-ready REST API to Heroku.

       •  Implement error handling with async wrapper

       •  Import PM2 and generate configuration and NPM start script

       •  Create a Procfile and push code to Heroku Cloud

  • Test your knowledge

Requirements

  • Some knowledge of REST would be an added advantage but is not a necessity.

Description

RESTful web APIs allow developers to create unique applications by leveraging the data on the internet. If you want to build fast-paced REST APIs and deliver large amounts of data to many users, you'll find this course essential.

In this course, you will learn to create scalable and rich RESTful applications based on the latest Node.js platform. You will learn to customize your RESTful development process using the latest NPM and understand the key principles to convert an HTTP application into RESTful-enabled applications. You will then create and test Node.js modules with automated tests, use MongoDB to store data, and get to grips with using self-descriptive URLs.

You will also use OpenAPI (Swagger) to document the API and Mocha to implement automation tests for a REST-enabled endpoint. We will explore authentication techniques to secure your application.Lastly, we will take advantage of Amazon Web Services (AWS) to deploy our APIs as microservices using Docker.

By the end of this course, you will have a solid grasp of APIs, HTTP, REST, authentication using tokens, API testing, site reliability, performance, security, and integration with cloud services.

Please note that familiarity with Node.js and Express.js (or similar), together with an understanding of Docker and CI/CD, is assumed for taking this course.

About the Author

Florian Goto specializes in architecting and building web solutions with TypeScript, JavaScript, and Node.js on front end, back end, mobile, and serverless/cloud-native platforms. He stays well informed about open source web technologies, particularly in the JavaScript and Node.js multiverse.

Who this course is for:

  • This course is for Web Developers who want to enhance their skills to build server-side RESTful applications with Node .js.