Node.js: Working with REST APIs - The Basics & The Practical Application (BACK-END)
Examples from the "Section 24: Working with REST APIs - The Basics" and "Section 25: Working with REST APIs - The Practical Application" and "Section 26: Understanding Async Await in Node.js" and "Section 27: Understanding Websockets & Socket.io" of the course "NodeJS - The Complete Guide (MVC, REST APIs, GraphQL, Deno)" by Academind (Maximilian Schwarzmüller).
Section 24 covered:
- What are REST APIs and why do we use Them?
- Accessing Data with REST APIs
- Understanding Routing & HTTP Methods
- REST APIs - The Core Principles
- Creating our REST API Project & Implementing the Route Setup
- Sending Requests & Responses and Working with Postman
- REST APIs, Clients & CORS Errors
- Sending POST Requests
Section 25 covered:
- REST APIs & The Rest Of The Course
- Understanding the Frontend Setup
- Planning the API
- Fetching Lists of Posts
- Adding a Create Post Endpoint
- Adding Server Side Validation
- Setting Up a Post Model
- Storing Posts in the Database
- Static Images & Error Handling
- Fetching a Single Post
- Uploading Images
- Updating Posts
- Deleting Posts
- Adding Pagination
- Adding a User Model
- Adding User Signup Validation
- Signing Users Up
- How Does Authentication Work?
- Starting with User Login
- Logging In & Creating JSON Web Tokens (JWTs)
- Using & Validating the Token
- Adding Auth Middleware to All Routes
- Connecting Posts & Users
- Adding Authorization Checks
- Clearing Post-User Relations
Section 26 covered:
- What is Async Await All About?
- Transforming "Then Catch" to "Async Await"
- Top-level "await"
Section 27 covered:
- What Are Websockets & Why Would You Use Them?
- Websocket Solutions - An Overview
- Setting Up Socket.io on the Server
- Establishing a Connection From the Client
- Identifying Realtime Potential
- Sharing the IO Instance Across Files
- Synchronizing POST Additions
- Fixing a Bug - The Missing Username
- Updating Posts On All Connected Clients
- Sorting Correctly
- Deleting Posts Across Clients
More info: https://www.udemy.com/course/nodejs-the-complete-guide/