Урок 1.00:01:22
Welcome
Урок 2.00:02:06
What will you learn in this course?
Урок 3.00:01:04
Who is the course for and prerequisites
Урок 4.00:01:08
What is REST?
Урок 5.00:05:33
The 6 constraints of REST
Урок 6.00:02:10
Resource naming and routing
Урок 7.00:02:06
HTTP Verbs are meaningful
Урок 8.00:02:27
Using response codes to indicate status
Урок 9.00:01:00
Flexible response body options
Урок 10.00:01:41
Understanding Idempotency
Урок 11.00:01:45
Using hypermedia for connectedness
Урок 12.00:01:28
The different types of errors
Урок 13.00:00:54
Section recap
Урок 14.00:02:18
The system we will build an API for
Урок 15.00:02:28
Creating the projects
Урок 16.00:03:28
Defining the movie API contracts
Урок 17.00:06:24
Creating a temporary database
Урок 18.00:01:04
Creating the movies controller
Урок 19.00:04:27
Implementing movie creation
Урок 20.00:02:05
Introducing mapping
Урок 21.00:02:18
Keeping track of the endpoints
Урок 22.00:04:36
Implementing movie retrieval
Урок 23.00:01:38
Perfecting the movie creation endpoint
Урок 24.00:02:53
Implementing movie update
Урок 25.00:01:33
Implementing movie deletion
Урок 26.00:01:25
Why partial updates are not used
Урок 27.00:00:37
Section recap
Урок 28.00:06:05
Implementing slug-based retrieval
Урок 29.00:01:40
Moving to a real database
Урок 30.00:06:36
Adding the database infrastructure code
Урок 31.00:08:18
Removing the old in-memory database
Урок 32.00:04:21
Adding a business logic layer
Урок 33.00:09:38
Implementing validation
Урок 34.00:05:09
Cancellation token passing
Урок 35.00:00:41
Section recap
Урок 36.00:02:21
Authentication and Authorization in REST APIs
Урок 37.00:03:59
What is the JSON Web Token?
Урок 38.00:01:32
The token generation service
Урок 39.00:07:08
Implementing JWT Authorization
Урок 40.00:03:40
Limiting actions for an admin
Урок 41.00:02:37
Limiting actions for a trusted member
Урок 42.00:00:39
Section recap
Урок 43.00:00:50
The concept of movie ratings
Урок 44.00:02:28
Where should ratings live?
Урок 45.00:00:57
Preparing the database
Урок 46.00:03:22
Using the user id
Урок 47.00:05:36
Updating the existing functionality to support ratings
Урок 48.00:08:04
Rating a movie
Урок 49.00:02:45
Deleting a rating
Урок 50.00:04:30
Retrieving user ratings
Урок 51.00:00:44
Section recap
Урок 52.00:08:08
Filtering
Урок 53.00:06:36
Sorting
Урок 54.00:09:20
Pagination
Урок 55.00:05:13
HATEOAS
Урок 56.00:05:07
Basic versioning
Урок 57.00:05:57
Advanced versioning
Урок 58.00:03:58
What is Swagger?
Урок 59.00:03:38
Integrating versioning in Swagger
Урок 60.00:02:01
Integrating auth in Swagger
Урок 61.00:02:29
Extending Swagger documentation
Урок 62.00:04:55
Adding health checks
Урок 63.00:05:23
Implementing Response caching
Урок 64.00:06:12
Implementing Output caching
Урок 65.00:04:20
Implementing API-key based auth
Урок 66.00:04:35
Implementing multiple auth
Урок 67.00:00:58
Section recap
Урок 68.00:01:14
Why create an SDK?
Урок 69.00:02:04
Creating the SDK project and the client example
Урок 70.00:02:41
Introducing Refit
Урок 71.00:02:01
Retrieving movies
Урок 72.00:01:45
Using the HttpClientFactory
Урок 73.00:01:42
Adding authentication
Урок 74.00:04:35
Handling token generation and refreshing
Урок 75.00:02:24
Adding the remaining requests
Урок 76.00:00:40
Section recap
Урок 77.00:01:50
What are Minimal APIs?
Урок 78.00:02:32
Creating the new endpoint structure
Урок 79.00:03:18
Migrating movie retrieval
Урок 80.00:03:09
Migrating movie creation
Урок 81.00:03:11
Migrating movie listing
Урок 82.00:01:12
Migrating movie update
Урок 83.00:01:55
Migrating movie deletion
Урок 84.00:00:38
Migrating rating endpoints
Урок 85.00:01:26
Migrating Auth
Урок 86.00:03:43
Updating Swagger
Урок 87.00:03:37
Updating versioning
Урок 88.00:01:04
Updating output cache
Урок 89.00:00:35
Section recap
Урок 90.00:00:24
Course conclusion