YoVDO

Building and Securing RESTful APIs in ASP.NET Core

Offered By: LinkedIn Learning

Tags

ASP.NET Core Courses JSON Courses API Security Courses HTTP Methods Courses CORS Courses OpenAPI Courses HATEOAS Courses

Course Description

Overview

Learn how to build fast and secure RESTful APIs with ASP.NET Core.

Syllabus

Introduction
  • The power of RESTful APIs
  • What you should know
  • Example API introduction
1. REST API Concepts
  • What is REST?
  • REST vs. RPC
  • Self-documentation and HATEOAS
  • HTTP methods
  • Full and partial updates
  • Returning JSON
  • The Ion hypermedia type
2. Build a Basic API
  • Create a new project
  • Configure MVC
  • Create a root controller
  • Test with Postman
  • Route to controllers with templates
  • Introduction to OpenAPI
  • Add NSwag to the project
3. Versioning and Errors
  • Approaches to API versioning
  • Add versioning support
  • Serialize exceptions as JSON
4. Secure the API
  • Transport security in ASP.NET Core
  • Require HTTPS
  • Test HTTPS locally
  • How CORS works
  • Add CORS middleware
5. Represent Resources
  • Create a resource class
  • Load data from configuration
  • Return data from a controller
  • Set up an in-memory database
  • Create data model classes
  • Seed the database with test data
  • Return a resource from a controller
  • Move data access to a service
  • Map models automatically
6. Represent Links
  • Create a Link class
  • Rewrite Links with a filter
  • Rewrite resource HREFs
7. Represent Collections
  • Create a Collection class
  • Return all resources in a collection
  • Add pagination
  • Paging defaults and validation
  • Add navigation to paged collections
8. Sorting Collections
  • Design collection sort
  • Add sort attributes
  • Validate sort parameters
  • Build sort expressions dynamically
  • Add a default sort term
9. Searching Collections
  • Design collection search
  • Add search attributes
  • Validate search parameters
  • Build search expressions dynamically
  • Extend search to other types
  • Add comparison operators
10. Forms and Modifying Data
  • Forms in Ion
  • Create a POST action
  • Delete a resource
  • Serialize the form metadata
  • Discoverable queries using forms
11. Caching and Compression
  • Compress responses
  • How HTTP caching works
  • Add the Cache-Control header
  • Support the ETag header
  • Add server-side caching
12. Authentication and Authorization
  • How HTTP authentication works
  • Authentication for REST APIs
  • Add Identity
  • Add a test user
  • Create a users collection
  • Create a registration route
  • Add OpenIddict
  • Add a token endpoint
  • Create a UserInfo route
  • More about OpenID Connect
  • Authorization using policies
Conclusion
  • Next steps

Taught by

Nate Barbettini

Related Courses

MongoDB for DBAs
MongoDB University
MongoDB for Node.js Developers
MongoDB University
Web Engineering II: Developing Mobile HTML5 Apps
Technische Hochschule Mittelhessen via iversity
Programming Mobile Services for Android Handheld Systems: Communication
Vanderbilt University via Coursera
HTML, CSS, and Javascript for Web Developers
Johns Hopkins University via Coursera