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 - Second Edition
Rating: 3.7 out of 5(23 ratings)
181 students
Last updated 5/2019
English

What you'll learn

  • Know what an API is and how it is used in client-server communication
  • Explore HTTP requests and responses and find out about the various fields that make up these requests and responses
  • Understand the architectural constraints and properties that make an API RESTful
  • Use Twitter’s API to tweet and search for tweets
  • Store Twitter’s data in our database to minimize the use of Twitter’s API
  • Use Async.js to handle Twitter’s API constraints
  • Test APIs using Postman and Apache Benchmark
  • Build the API on the server using Express.js and MongoDB
  • Find out about the Facebook Graph API, and its structure, resources, and permissions
  • Be introduced to GitHub API, its use of different representations, the PATCH verb, HATEOAS, and conditional requests
  • Get security tips to prevent session hijacking vulnerabilities

Course content

5 sections27 lectures2h 37m total length
  • The Course Overview2:25

    This video provides an overview of the entire course.

  • What Is an API?2:24

    The aim of this video is to define API in the context of this course. The video shows what an API is, what it is not, and how is it used in client-server communication.

  • Communication via HTTP6:50

    This video aims to give the viewers an introduction to HTTP by focusing on the parts that are used in RESTful APIs. The terms that are explained in this video will be used throughout the course.

  • Identifying REST Resources4:28

    This video explains the three kinds of REST resources, the endpoint names of each kind, and the methods that can be applied to each endpoint.

  • Properties of RESTful APIs6:51

    APIs can run over HTTP and yet not be RESTful. This video covers the architectural constraints and properties that make an API RESTful.

  • Setting Up the Environment7:08

    This video deals with setting up the development environment so that we are ready to create our application.

Requirements

  • Knowledge of REST or HTTP is not essential as this course provides all the background information required to get you started.

Description

RESTful Web APIs allow developers to create unprecedented applications by leveraging the data on the internet. Since JavaScript is the language of the web, building APIs using Node.js provides a seamless development experience on both the front end and the back end.

This video course gives you an overview of a RESTful API and goes through the logical steps of building one. It explores three different APIs, focusing on their similarities and differences to effectively implement one.

We’ll start off by defining APIs, showing you how they can be built on top of HTTP, and listing the properties that make an API RESTful. We will develop Twitter Notes, a web application that lets its users leave notes for their Twitter friends. We will use Twitter’s API to implement a login flow and then design a web API. In addition to using Twitter’s API, we will take a closer look at two other real-world APIs—Facebook API and GitHub API. Finally, we’ll look at some best practices to keep the APIs secure, maintainable, and performing.

By the end of this course, you will have a good grasp of APIs, HTTP, REST, OAuth 1.0a, API testing, and site reliability, performance, and security. Since the course explores three different REST APIs, you will reach a level where you will be comfortable using any RESTful API, even if it does not have an SDK.

About the Authors

Saleh Hamadeh works as a full-stack software developer at Redfin, a startup that it is using technology to reinvent real-estate. Earlier in his career, Saleh worked at Yahoo! and BrainJocks. During his college years, Saleh served as president of gt-web dev, a Georgia Tech student organization that teaches web development. He is passionate about the future of the web and wants to continue to work and learn in this field.

Who this course is for:

  • This video course is for Node.js developers who know JavaScript and are familiar with HTML and CSS.