Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Node.js, Express, MongoDB & More The Complete Bootcamp 2024, а также все другие курсы, прямо сейчас!
Премиум
  • Урок 1. 00:06:46
    Course Structure and Projects
  • Урок 2. 00:05:26
    Let's Install Node.js
  • Урок 3. 00:00:56
    Section Intro
  • Урок 4. 00:07:40
    What Is Node.js and Why Use It?
  • Урок 5. 00:06:28
    Running Javascript Outside the Browser
  • Урок 6. 00:06:00
    Using Modules 1: Core Modules
  • Урок 7. 00:07:29
    Reading and Writing Files
  • Урок 8. 00:10:14
    Blocking and Non-Blocking: Asynchronous Nature of Node.js
  • Урок 9. 00:14:17
    Reading and Writing Files Asynchronously
  • Урок 10. 00:12:51
    Creating a Simple Web Server
  • Урок 11. 00:15:19
    Routing
  • Урок 12. 00:14:29
    Building a (Very) Simple API
  • Урок 13. 00:14:04
    HTML Templating: Building the Templates
  • Урок 14. 00:20:47
    HTML Templating: Filling the Templates
  • Урок 15. 00:10:24
    Parsing Variables from URLs
  • Урок 16. 00:06:35
    Using Modules 2: Our Own Modules
  • Урок 17. 00:05:18
    Introduction to NPM and the package.json File
  • Урок 18. 00:13:40
    Types of Packages and Installs
  • Урок 19. 00:07:56
    Using Modules 3: 3rd Party Modules
  • Урок 20. 00:11:46
    Package Versioning and Updating
  • Урок 21. 00:11:28
    Setting up Prettier in VS Code
  • Урок 22. 00:02:58
    Recap and What's Next
  • Урок 23. 00:00:47
    Section Intro
  • Урок 24. 00:13:29
    An Overview of How the Web Works
  • Урок 25. 00:05:30
    HTTP in Action
  • Урок 26. 00:06:03
    Front-End vs. Back-End Web Development
  • Урок 27. 00:09:16
    Static vs Dynamic vs API
  • Урок 28. 00:01:25
    Section Intro
  • Урок 29. 00:03:48
    Node, V8, Libuv and C++
  • Урок 30. 00:04:22
    Processes, Threads and the Thread Pool
  • Урок 31. 00:11:34
    The Node.js Event Loop
  • Урок 32. 00:18:51
    The Event Loop in Practice
  • Урок 33. 00:04:19
    Events and Event-Driven Architecture
  • Урок 34. 00:13:55
    Events in Practice
  • Урок 35. 00:06:18
    Introduction to Streams
  • Урок 36. 00:16:07
    Streams in Practice
  • Урок 37. 00:09:40
    How Requiring Modules Really Works
  • Урок 38. 00:15:52
    Requiring Modules in Practice
  • Урок 39. 00:00:58
    Section Intro
  • Урок 40. 00:12:47
    The Problem with Callbacks: Callback Hell
  • Урок 41. 00:06:44
    From Callback Hell to Promises
  • Урок 42. 00:14:43
    Building Promises
  • Урок 43. 00:07:49
    Consuming Promises with Async/Await
  • Урок 44. 00:13:04
    Returning Values from Async Functions
  • Урок 45. 00:06:12
    Waiting for Multiple Promises Simultaneously
  • Урок 46. 00:00:57
    Section Intro
  • Урок 47. 00:02:02
    What is Express?
  • Урок 48. 00:03:27
    Installing Postman
  • Урок 49. 00:14:49
    Setting up Express and Basic Routing
  • Урок 50. 00:16:08
    APIs and RESTful API Design
  • Урок 51. 00:12:20
    Starting Our API: Handling GET Requests
  • Урок 52. 00:15:22
    Handling POST Requests
  • Урок 53. 00:11:49
    Responding to URL Parameters
  • Урок 54. 00:07:06
    Handling PATCH Requests
  • Урок 55. 00:02:41
    Handling DELETE Requests
  • Урок 56. 00:06:48
    Refactoring Our Routes
  • Урок 57. 00:04:49
    Middleware and the Request-Response Cycle
  • Урок 58. 00:09:06
    Creating Our Own Middleware
  • Урок 59. 00:09:36
    Using 3rd-Party Middleware
  • Урок 60. 00:06:58
    Implementing the "Users" Routes
  • Урок 61. 00:08:05
    Creating and Mounting Multiple Routers
  • Урок 62. 00:18:21
    A Better File Structure
  • Урок 63. 00:10:55
    Param Middleware
  • Урок 64. 00:07:35
    Chaining Multiple Middleware Functions
  • Урок 65. 00:05:28
    Serving Static Files
  • Урок 66. 00:16:40
    Environment Variables
  • Урок 67. 00:13:34
    Setting up ESLint + Prettier in VS Code
  • Урок 68. 00:00:49
    Section Intro
  • Урок 69. 00:08:45
    What is MongoDB?
  • Урок 70. 00:06:35
    [OPTIONAL] Installing MongoDB on macOS
  • Урок 71. 00:10:03
    [OPTIONAL] Installing MongoDB on Windows
  • Урок 72. 00:07:40
    [OPTIONAL] Creating a Local Database
  • Урок 73. 00:04:18
    [OPTIONAL] CRUD: Creating Documents
  • Урок 74. 00:12:27
    [OPTIONAL] CRUD: Querying (Reading) Documents
  • Урок 75. 00:07:51
    [OPTIONAL] CRUD: Updating Documents
  • Урок 76. 00:02:48
    [OPTIONAL] CRUD: Deleting Documents
  • Урок 77. 00:07:12
    Using Compass App for CRUD Operations
  • Урок 78. 00:04:28
    Creating a Hosted Database with Atlas
  • Урок 79. 00:07:36
    Connecting to Our Hosted Database
  • Урок 80. 00:00:57
    Section Intro
  • Урок 81. 00:12:25
    Connecting Our Database with the Express App
  • Урок 82. 00:01:54
    What Is Mongoose?
  • Урок 83. 00:07:02
    Creating a Simple Tour Model
  • Урок 84. 00:09:04
    Creating Documents and Testing the Model
  • Урок 85. 00:06:55
    Intro to Back-End Architecture: MVC, Types of Logic, and More
  • Урок 86. 00:06:32
    Refactoring for MVC
  • Урок 87. 00:13:54
    Another Way of Creating Documents
  • Урок 88. 00:08:36
    Reading Documents
  • Урок 89. 00:10:52
    Updating Documents
  • Урок 90. 00:04:10
    Deleting Documents
  • Урок 91. 00:18:14
    Modelling the Tours
  • Урок 92. 00:15:41
    Importing Development Data
  • Урок 93. 00:18:46
    Making the API Better: Filtering
  • Урок 94. 00:12:05
    Making the API Better: Advanced Filtering
  • Урок 95. 00:11:01
    Making the API Better: Sorting
  • Урок 96. 00:06:20
    Making the API Better: Limiting Fields
  • Урок 97. 00:15:00
    Making the API Better: Pagination
  • Урок 98. 00:08:57
    Making the API Better: Aliasing
  • Урок 99. 00:15:39
    Refactoring API Features
  • Урок 100. 00:20:38
    Aggregation Pipeline: Matching and Grouping
  • Урок 101. 00:19:29
    Aggregation Pipeline: Unwinding and Projecting
  • Урок 102. 00:06:24
    Virtual Properties
  • Урок 103. 00:14:30
    Document Middleware
  • Урок 104. 00:13:55
    Query Middleware
  • Урок 105. 00:07:43
    Aggregation Middleware
  • Урок 106. 00:10:07
    Data Validation: Built-In Validators
  • Урок 107. 00:14:03
    Data Validation: Custom Validators
  • Урок 108. 00:00:42
    Section Intro
  • Урок 109. 00:20:30
    Debugging Node.js with ndb
  • Урок 110. 00:07:51
    Handling Unhandled Routes
  • Урок 111. 00:03:37
    An Overview of Error Handling
  • Урок 112. 00:09:00
    Implementing a Global Error Handling Middleware
  • Урок 113. 00:11:14
    Better Errors and Refactoring
  • Урок 114. 00:14:55
    Catching Errors in Async Functions
  • Урок 115. 00:09:07
    Adding 404 Not Found Errors
  • Урок 116. 00:10:31
    Errors During Development vs Production
  • Урок 117. 00:09:43
    Handling Invalid Database IDs
  • Урок 118. 00:06:05
    Handling Duplicate Database Fields
  • Урок 119. 00:08:25
    Handling Mongoose Validation Errors
  • Урок 120. 00:08:50
    Errors Outside Express: Unhandled Rejections
  • Урок 121. 00:09:17
    Catching Uncaught Exceptions
  • Урок 122. 00:00:59
    Section Intro
  • Урок 123. 00:10:01
    Modelling Users
  • Урок 124. 00:11:20
    Creating New Users
  • Урок 125. 00:18:25
    Managing Passwords
  • Урок 126. 00:08:47
    How Authentication with JWT Works
  • Урок 127. 00:16:02
    Signing up Users
  • Урок 128. 00:26:36
    Logging in Users
  • Урок 129. 00:14:58
    Protecting Tour Routes - Part 1
  • Урок 130. 00:35:15
    Protecting Tour Routes - Part 2
  • Урок 131. 00:11:36
    Advanced Postman Setup
  • Урок 132. 00:15:55
    Authorization: User Roles and Permissions
  • Урок 133. 00:17:04
    Password Reset Functionality: Reset Token
  • Урок 134. 00:23:05
    Sending Emails with Nodemailer
  • Урок 135. 00:21:34
    Password Reset Functionality: Setting New Password
  • Урок 136. 00:16:37
    Updating the Current User: Password
  • Урок 137. 00:20:12
    Updating the Current User: Data
  • Урок 138. 00:10:29
    Deleting the Current User
  • Урок 139. 00:10:14
    Security Best Practices
  • Урок 140. 00:09:47
    Sending JWT via Cookie
  • Урок 141. 00:07:05
    Implementing Rate Limiting
  • Урок 142. 00:05:20
    Setting Security HTTP Headers
  • Урок 143. 00:09:16
    Data Sanitization
  • Урок 144. 00:08:21
    Preventing Parameter Pollution
  • Урок 145. 00:01:03
    Section Intro
  • Урок 146. 00:24:40
    MongoDB Data Modelling
  • Урок 147. 00:10:58
    Designing Our Data Model
  • Урок 148. 00:12:26
    Modelling Locations (Geospatial Data)
  • Урок 149. 00:07:49
    Modelling Tour Guides: Embedding
  • Урок 150. 00:04:57
    Modelling Tour Guides: Child Referencing
  • Урок 151. 00:10:43
    Populating Tour Guides
  • Урок 152. 00:08:32
    Modelling Reviews: Parent Referencing
  • Урок 153. 00:17:04
    Creating and Getting Reviews
  • Урок 154. 00:06:07
    Populating Reviews
  • Урок 155. 00:12:03
    Virtual Populate: Tours and Reviews
  • Урок 156. 00:13:30
    Implementing Simple Nested Routes
  • Урок 157. 00:08:01
    Nested Routes with Express
  • Урок 158. 00:05:07
    Adding a Nested GET Endpoint
  • Урок 159. 00:14:22
    Building Handler Factory Functions: Delete
  • Урок 160. 00:13:23
    Factory Functions: Update and Create
  • Урок 161. 00:14:43
    Factory Functions: Reading
  • Урок 162. 00:04:43
    Adding a /me Endpoint
  • Урок 163. 00:14:45
    Adding Missing Authentication and Authorization
  • Урок 164. 00:07:27
    Importing Review and User Data
  • Урок 165. 00:16:12
    Improving Read Performance with Indexes
  • Урок 166. 00:22:26
    Calculating Average Rating on Tours - Part 1
  • Урок 167. 00:15:58
    Calculating Average Rating on Tours - Part 2
  • Урок 168. 00:09:30
    Preventing Duplicate Reviews
  • Урок 169. 00:29:54
    Geospatial Queries: Finding Tours Within Radius
  • Урок 170. 00:16:29
    Geospatial Aggregation: Calculating Distances
  • Урок 171. 00:10:38
    Creating API Documentation Using Postman
  • Урок 172. 00:00:57
    Section Intro
  • Урок 173. 00:05:17
    Recap: Server-Side vs Client-Side Rendering
  • Урок 174. 00:10:09
    Setting up Pug in Express
  • Урок 175. 00:14:38
    First Steps with Pug
  • Урок 176. 00:15:25
    Creating Our Base Template
  • Урок 177. 00:04:46
    Including Files into Pug Templates
  • Урок 178. 00:10:07
    Extending Our Base Template with Blocks
  • Урок 179. 00:05:58
    Setting up the Project Structure
  • Урок 180. 00:11:38
    Building the Tour Overview - Part 1
  • Урок 181. 00:15:54
    Building the Tour Overview - Part 2
  • Урок 182. 00:20:29
    Building the Tour Page - Part 1
  • Урок 183. 00:25:51
    Building the Tour Page - Part 2
  • Урок 184. 00:11:34
    Including a Map with Mapbox - Part 1
  • Урок 185. 00:27:52
    Including a Map with Mapbox - Part 2
  • Урок 186. 00:06:31
    Building the Login Screen
  • Урок 187. 00:20:54
    Logging in Users with Our API - Part 1
  • Урок 188. 00:18:40
    Logging in Users with Our API - Part 2
  • Урок 189. 00:28:16
    Logging in Users with Our API - Part 3
  • Урок 190. 00:13:57
    Logging out Users
  • Урок 191. 00:21:46
    Rendering Error Pages
  • Урок 192. 00:16:06
    Building the User Account Page
  • Урок 193. 00:17:08
    Updating User Data
  • Урок 194. 00:12:35
    Updating User Data with Our API
  • Урок 195. 00:14:43
    Updating User Password with Our API
  • Урок 196. 00:00:33
    Section Intro
  • Урок 197. 00:10:13
    Image Uploads Using Multer: Users
  • Урок 198. 00:13:47
    Configuring Multer
  • Урок 199. 00:05:33
    Saving Image Name to Database
  • Урок 200. 00:13:20
    Resizing Images
  • Урок 201. 00:11:34
    Adding Image Uploads to Form
  • Урок 202. 00:12:03
    Uploading Multiple Images: Tours
  • Урок 203. 00:18:12
    Processing Multiple Images
  • Урок 204. 00:19:59
    Building a Complex Email Handler
  • Урок 205. 00:15:09
    Email Templates with Pug: Welcome Emails
  • Урок 206. 00:07:08
    Sending Password Reset Emails
  • Урок 207. 00:09:33
    Using Sendgrid for "Real" Emails
  • Урок 208. 00:10:09
    Credit Card Payments with Stripe
  • Урок 209. 00:22:35
    Integrating Stripe into the Back-End
  • Урок 210. 00:23:05
    Processing Payments on the Front-End
  • Урок 211. 00:06:24
    Modelling the Bookings
  • Урок 212. 00:19:09
    Creating New Bookings on Checkout Success
  • Урок 213. 00:11:17
    Rendering a User's Booked Tours
  • Урок 214. 00:07:13
    Finishing the Bookings API
  • Урок 215. 00:07:29
    Final Considerations
  • Урок 216. 00:00:41
    Section Intro
  • Урок 217. 00:04:39
    Setting Up Git and GitHub
  • Урок 218. 00:10:34
    Git Fundamentals
  • Урок 219. 00:10:29
    Pushing to GitHub
  • Урок 220. 00:10:56
    Preparing Our App for Deployment
  • Урок 221. 00:26:31
    Deploying Our App to Heroku
  • Урок 222. 00:05:53
    Testing for Secure HTTPS Connections
  • Урок 223. 00:07:22
    Responding to a SIGTERM Signal
  • Урок 224. 00:15:54
    Implementing CORS
  • Урок 225. 00:38:09
    Finishing Payments with Stripe Webhooks
  • Урок 226. 00:03:40
    Where to Go from Here