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 NodeJS
Rating: 3.4 out of 5(35 ratings)
251 students

RESTful Web API Design with NodeJS

Explore the practical sides of REST to build data-centric applications with Node
Last updated 5/2016
English

What you'll learn

  • Define 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 sections22 lectures1h 55m 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 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 end up honing some best practices to keep the APIs secure, maintainable, and performant.

By the end of this course, you will have a good grasp of APIs, HTTP, REST, OAuth 1.0a, API testing, and API 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 Author

Saleh Hamadeh started programming when he was 13, and he currently studies computer science at the Georgia Institute of Technology. Saleh became president of gt-webdev, a student organization focused on teaching students web development. During his time at Georgia Tech, Saleh interned as a web developer at BrainJocks and Yahoo! Saleh is passionate about the future of the web and hopes to work, learn, and teach in that field.

Who this course is for:

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