Node.js, Express, MongoDB & Mongoose - The Complete Guide
Không có mô tả khóa học
Khu vực Câu hỏi thường gặp trống
Course Structure and Projects
Xem trướcLet's Install Node.js
Xem trướcCourse Structure and Projects
Xem trướcLet's Install Node.js
Xem trướcCourse Structure and Projects
Xem trướcREAD BEFORE YOU START!
Xem trướcLet's Install Node.js
Xem trướcCourse Structure and Projects
Xem trướcREAD BEFORE YOU START!
Xem trướcLet's Install Node.js
Xem trướcSection Intro
Xem trướcWhat Is Node.js and Why Use It?
Xem trướcRunning Javascript Outside the Browser
Xem trướcUsing Modules 1: Core Modules
Xem trướcReading and Writing Files
Xem trướcBlocking and Non-Blocking: Asynchronous Nature of Node.js
Xem trướcReading and Writing Files Asynchronously
Xem trướcCreating a Simple Web Server
Xem trướcRouting
Xem trướcBuilding a (Very) Simple API
Xem trướcHTML Templating: Building the Templates
Xem trướcHTML Templating: Filling the Templates
Xem trướcParsing Variables from URLs
Xem trướcUsing Modules 2: Our Own Modules
Xem trướcIntroduction to NPM and the package.json File
Xem trướcTypes of Packages and Installs
Xem trướcUsing Modules 3: 3rd Party Modules
Xem trướcPackage Versioning and Updating
Xem trướcSetting up Prettier in VS Code
Xem trướcRecap and What's Next
Xem trướcSection Intro
Xem trướcWhat Is Node.js and Why Use It?
Xem trướcRunning Javascript Outside the Browser
Xem trướcUsing Modules 1: Core Modules
Xem trướcReading and Writing Files
Xem trướcBlocking and Non-Blocking: Asynchronous Nature of Node.js
Xem trướcReading and Writing Files Asynchronously
Xem trướcCreating a Simple Web Server
Xem trướcRouting
Xem trướcBuilding a (Very) Simple API
Xem trướcHTML Templating: Building the Templates
Xem trướcHTML Templating: Filling the Templates
Xem trướcParsing Variables from URLs
Xem trướcUsing Modules 2: Our Own Modules
Xem trướcIntroduction to NPM and the package.json File
Xem trướcTypes of Packages and Installs
Xem trướcUsing Modules 3: 3rd Party Modules
Xem trướcPackage Versioning and Updating
Xem trướcSetting up Prettier in VS Code
Xem trướcRecap and What's Next
Xem trướcSection Intro
Xem trướcWhat Is Node.js and Why Use It?
Xem trướcRunning Javascript Outside the Browser
Xem trướcUsing Modules 1: Core Modules
Xem trướcReading and Writing Files
Xem trướcBlocking and Non-Blocking: Asynchronous Nature of Node.js
Xem trướcReading and Writing Files Asynchronously
Xem trướcCreating a Simple Web Server
Xem trướcRouting
Xem trướcBuilding a (Very) Simple API
Xem trướcHTML Templating: Building the Templates
Xem trướcHTML Templating: Filling the Templates
Xem trướcParsing Variables from URLs
Xem trướcUsing Modules 2: Our Own Modules
Xem trướcIntroduction to NPM and the package.json File
Xem trướcTypes of Packages and Installs
Xem trướcUsing Modules 3: 3rd Party Modules
Xem trướcPackage Versioning and Updating
Xem trướcSetting up Prettier in VS Code
Xem trướcRecap and What's Next
Xem trướcSection Intro
Xem trướcWhat Is Node.js and Why Use It?
Xem trướcRunning Javascript Outside the Browser
Xem trướcUsing Modules 1: Core Modules
Xem trướcReading and Writing Files
Xem trướcBlocking and Non-Blocking: Asynchronous Nature of Node.js
Xem trướcReading and Writing Files Asynchronously
Xem trướcCreating a Simple Web Server
Xem trướcRouting
Xem trướcBuilding a (Very) Simple API
Xem trướcHTML Templating: Building the Templates
Xem trướcHTML Templating: Filling the Templates
Xem trướcParsing Variables from URLs
Xem trướcUsing Modules 2: Our Own Modules
Xem trướcIntroduction to NPM and the package.json File
Xem trướcTypes of Packages and Installs
Xem trướcUsing Modules 3: 3rd Party Modules
Xem trướcPackage Versioning and Updating
Xem trướcSetting up Prettier in VS Code
Xem trướcRecap and What's Next
Xem trướcSection Intro
Xem trướcAn Overview of How the Web Works
Xem trướcHTTP in Action
Xem trướcFront-End vs. Back-End Web Development
Xem trướcStatic vs Dynamic vs API
Xem trướcSection Intro
Xem trướcAn Overview of How the Web Works
Xem trướcHTTP in Action
Xem trướcFront-End vs. Back-End Web Development
Xem trướcStatic vs Dynamic vs API
Xem trướcSection Intro
Xem trướcAn Overview of How the Web Works
Xem trướcHTTP in Action
Xem trướcFront-End vs. Back-End Web Development
Xem trướcStatic vs Dynamic vs API
Xem trướcSection Intro
Xem trướcAn Overview of How the Web Works
Xem trướcHTTP in Action
Xem trướcFront-End vs. Back-End Web Development
Xem trướcStatic vs Dynamic vs API
Xem trướcSection Intro
Xem trướcNode, V8, Libuv and C++
Xem trướcProcesses, Threads and the Thread Pool
Xem trướcThe Node.js Event Loop
Xem trướcThe Event Loop in Practice
Xem trướcEvents and Event-Driven Architecture
Xem trướcEvents in Practice
Xem trướcIntroduction to Streams
Xem trướcStreams in Practice
Xem trướcHow Requiring Modules Really Works
Xem trướcRequiring Modules in Practice
Xem trướcSection Intro
Xem trướcNode, V8, Libuv and C++
Xem trướcProcesses, Threads and the Thread Pool
Xem trướcThe Node.js Event Loop
Xem trướcThe Event Loop in Practice
Xem trướcEvents and Event-Driven Architecture
Xem trướcEvents in Practice
Xem trướcIntroduction to Streams
Xem trướcStreams in Practice
Xem trướcHow Requiring Modules Really Works
Xem trướcRequiring Modules in Practice
Xem trướcSection Intro
Xem trướcNode, V8, Libuv and C++
Xem trướcProcesses, Threads and the Thread Pool
Xem trướcThe Node.js Event Loop
Xem trướcThe Event Loop in Practice
Xem trướcEvents and Event-Driven Architecture
Xem trướcEvents in Practice
Xem trướcIntroduction to Streams
Xem trướcStreams in Practice
Xem trướcHow Requiring Modules Really Works
Xem trướcRequiring Modules in Practice
Xem trướcSection Intro
Xem trướcNode, V8, Libuv and C++
Xem trướcProcesses, Threads and the Thread Pool
Xem trướcThe Node.js Event Loop
Xem trướcThe Event Loop in Practice
Xem trướcEvents and Event-Driven Architecture
Xem trướcEvents in Practice
Xem trướcIntroduction to Streams
Xem trướcStreams in Practice
Xem trướcHow Requiring Modules Really Works
Xem trướcRequiring Modules in Practice
Xem trướcSection Intro
Xem trướcThe Problem with Callbacks: Callback Hell
Xem trướcFrom Callback Hell to Promises
Xem trướcBuilding Promises
Xem trướcConsuming Promises with Async/Await
Xem trướcReturning Values from Async Functions
Xem trướcWaiting for Multiple Promises Simultaneously
Xem trướcSection Intro
Xem trướcThe Problem with Callbacks: Callback Hell
Xem trướcFrom Callback Hell to Promises
Xem trướcBuilding Promises
Xem trướcConsuming Promises with Async/Await
Xem trướcReturning Values from Async Functions
Xem trướcWaiting for Multiple Promises Simultaneously
Xem trướcSection Intro
Xem trướcThe Problem with Callbacks: Callback Hell
Xem trướcFrom Callback Hell to Promises
Xem trướcBuilding Promises
Xem trướcConsuming Promises with Async/Await
Xem trướcReturning Values from Async Functions
Xem trướcWaiting for Multiple Promises Simultaneously
Xem trướcSection Intro
Xem trướcThe Problem with Callbacks: Callback Hell
Xem trướcFrom Callback Hell to Promises
Xem trướcBuilding Promises
Xem trướcConsuming Promises with Async/Await
Xem trướcReturning Values from Async Functions
Xem trướcWaiting for Multiple Promises Simultaneously
Xem trướcSection Intro
Xem trướcWhat is Express?
Xem trướcInstalling Postman
Xem trướcSetting up Express and Basic Routing
Xem trướcAPIs and RESTful API Design
Xem trướcStarting Our API: Handling GET Requests
Xem trướcHandling POST Requests
Xem trướcResponding to URL Parameters
Xem trướcHandling PATCH Requests
Xem trướcHandling DELETE Requests
Xem trướcRefactoring Our Routes
Xem trướcMiddleware and the Request-Response Cycle
Xem trướcCreating Our Own Middleware
Xem trướcUsing 3rd-Party Middleware
Xem trướcImplementing the "Users" Routes
Xem trướcCreating and Mounting Multiple Routers
Xem trướcA Better File Structure
Xem trướcParam Middleware
Xem trướcChaining Multiple Middleware Functions
Xem trướcServing Static Files
Xem trướcEnvironment Variables
Xem trướcSetting up ESLint + Prettier in VS Code
Xem trướcSection Intro
Xem trướcWhat is Express?
Xem trướcInstalling Postman
Xem trướcSetting up Express and Basic Routing
Xem trướcAPIs and RESTful API Design
Xem trướcStarting Our API: Handling GET Requests
Xem trướcHandling POST Requests
Xem trướcResponding to URL Parameters
Xem trướcHandling PATCH Requests
Xem trướcHandling DELETE Requests
Xem trướcRefactoring Our Routes
Xem trướcMiddleware and the Request-Response Cycle
Xem trướcCreating Our Own Middleware
Xem trướcUsing 3rd-Party Middleware
Xem trướcImplementing the "Users" Routes
Xem trướcCreating and Mounting Multiple Routers
Xem trướcA Better File Structure
Xem trướcParam Middleware
Xem trướcChaining Multiple Middleware Functions
Xem trướcServing Static Files
Xem trướcEnvironment Variables
Xem trướcSetting up ESLint + Prettier in VS Code
Xem trướcSection Intro
Xem trướcWhat is Express?
Xem trướcInstalling Postman
Xem trướcSetting up Express and Basic Routing
Xem trướcAPIs and RESTful API Design
Xem trướcStarting Our API: Handling GET Requests
Xem trướcHandling POST Requests
Xem trướcResponding to URL Parameters
Xem trướcHandling PATCH Requests
Xem trướcHandling DELETE Requests
Xem trướcRefactoring Our Routes
Xem trướcMiddleware and the Request-Response Cycle
Xem trướcCreating Our Own Middleware
Xem trướcUsing 3rd-Party Middleware
Xem trướcImplementing the "Users" Routes
Xem trướcCreating and Mounting Multiple Routers
Xem trướcA Better File Structure
Xem trướcParam Middleware
Xem trướcChaining Multiple Middleware Functions
Xem trướcServing Static Files
Xem trướcEnvironment Variables
Xem trướcSetting up ESLint + Prettier in VS Code
Xem trướcSection Intro
Xem trướcWhat is Express?
Xem trướcInstalling Postman
Xem trướcSetting up Express and Basic Routing
Xem trướcAPIs and RESTful API Design
Xem trướcStarting Our API: Handling GET Requests
Xem trướcHandling POST Requests
Xem trướcResponding to URL Parameters
Xem trướcHandling PATCH Requests
Xem trướcHandling DELETE Requests
Xem trướcRefactoring Our Routes
Xem trướcMiddleware and the Request-Response Cycle
Xem trướcCreating Our Own Middleware
Xem trướcUsing 3rd-Party Middleware
Xem trướcImplementing the "Users" Routes
Xem trướcCreating and Mounting Multiple Routers
Xem trướcA Better File Structure
Xem trướcParam Middleware
Xem trướcChaining Multiple Middleware Functions
Xem trướcServing Static Files
Xem trướcEnvironment Variables
Xem trướcSetting up ESLint + Prettier in VS Code
Xem trướcSection Intro
Xem trướcWhat is MongoDB?
Xem trước[OPTIONAL] Installing MongoDB on macOS
Xem trước[OPTIONAL] Installing MongoDB on Windows
Xem trước[OPTIONAL] Creating a Local Database
Xem trước[OPTIONAL] CRUD: Creating Documents
Xem trước[OPTIONAL] CRUD: Querying (Reading) Documents
Xem trước[OPTIONAL] CRUD: Updating Documents
Xem trước[OPTIONAL] CRUD: Deleting Documents
Xem trướcUsing Compass App for CRUD Operations
Xem trướcCreating a Hosted Database with Atlas
Xem trướcConnecting to Our Hosted Database
Xem trướcSection Intro
Xem trướcWhat is MongoDB?
Xem trước[OPTIONAL] Installing MongoDB on macOS
Xem trước[OPTIONAL] Installing MongoDB on Windows
Xem trước[OPTIONAL] Creating a Local Database
Xem trước[OPTIONAL] CRUD: Creating Documents
Xem trước[OPTIONAL] CRUD: Querying (Reading) Documents
Xem trước[OPTIONAL] CRUD: Updating Documents
Xem trước[OPTIONAL] CRUD: Deleting Documents
Xem trướcUsing Compass App for CRUD Operations
Xem trướcCreating a Hosted Database with Atlas
Xem trướcConnecting to Our Hosted Database
Xem trướcSection Intro
Xem trướcWhat is MongoDB?
Xem trướcNo Need to Install MongoDB Locally
[OPTIONAL] Installing MongoDB on macOS
Xem trước[OPTIONAL] Installing MongoDB on Windows
Xem trước[OPTIONAL] Creating a Local Database
Xem trước[OPTIONAL] CRUD: Creating Documents
Xem trước[OPTIONAL] CRUD: Querying (Reading) Documents
Xem trước[OPTIONAL] CRUD: Updating Documents
Xem trước[OPTIONAL] CRUD: Deleting Documents
Xem trướcUsing Compass App for CRUD Operations
Xem trướcCreating a Hosted Database with Atlas
Xem trướcConnecting to Our Hosted Database
Xem trướcSection Intro
Xem trướcWhat is MongoDB?
Xem trướcNo Need to Install MongoDB Locally
[OPTIONAL] Installing MongoDB on macOS
Xem trước[OPTIONAL] Installing MongoDB on Windows
Xem trước[OPTIONAL] Creating a Local Database
Xem trước[OPTIONAL] CRUD: Creating Documents
Xem trước[OPTIONAL] CRUD: Querying (Reading) Documents
Xem trước[OPTIONAL] CRUD: Updating Documents
Xem trước[OPTIONAL] CRUD: Deleting Documents
Xem trướcUsing Compass App for CRUD Operations
Xem trướcCreating a Hosted Database with Atlas
Xem trướcConnecting to Our Hosted Database
Xem trướcSection Intro
Xem trướcConnecting Our Database with the Express App
Xem trướcWhat Is Mongoose?
Xem trướcCreating a Simple Tour Model
Xem trướcCreating Documents and Testing the Model
Xem trướcIntro to Back-End Architecture: MVC, Types of Logic, and More
Xem trướcRefactoring for MVC
Xem trướcAnother Way of Creating Documents
Xem trướcReading Documents
Xem trướcUpdating Documents
Xem trướcDeleting Documents
Xem trướcModelling the Tours
Xem trướcImporting Development Data
Xem trướcMaking the API Better: Filtering
Xem trướcMaking the API Better: Advanced Filtering
Xem trướcMaking the API Better: Sorting
Xem trướcMaking the API Better: Limiting Fields
Xem trướcMaking the API Better: Pagination
Xem trướcMaking the API Better: Aliasing
Xem trướcRefactoring API Features
Xem trướcAggregation Pipeline: Matching and Grouping
Xem trướcAggregation Pipeline: Unwinding and Projecting
Xem trướcVirtual Properties
Xem trướcDocument Middleware
Xem trướcQuery Middleware
Xem trướcAggregation Middleware
Xem trướcData Validation: Built-In Validators
Xem trướcData Validation: Custom Validators
Xem trướcSection Intro
Xem trướcConnecting Our Database with the Express App
Xem trướcWhat Is Mongoose?
Xem trướcCreating a Simple Tour Model
Xem trướcCreating Documents and Testing the Model
Xem trướcIntro to Back-End Architecture: MVC, Types of Logic, and More
Xem trướcRefactoring for MVC
Xem trướcAnother Way of Creating Documents
Xem trướcReading Documents
Xem trướcUpdating Documents
Xem trướcDeleting Documents
Xem trướcModelling the Tours
Xem trướcImporting Development Data
Xem trướcMaking the API Better: Filtering
Xem trướcMaking the API Better: Advanced Filtering
Xem trướcMaking the API Better: Sorting
Xem trướcMaking the API Better: Limiting Fields
Xem trướcMaking the API Better: Pagination
Xem trướcMaking the API Better: Aliasing
Xem trướcRefactoring API Features
Xem trướcAggregation Pipeline: Matching and Grouping
Xem trướcAggregation Pipeline: Unwinding and Projecting
Xem trướcVirtual Properties
Xem trướcDocument Middleware
Xem trướcQuery Middleware
Xem trướcAggregation Middleware
Xem trướcData Validation: Built-In Validators
Xem trướcData Validation: Custom Validators
Xem trướcSection Intro
Xem trướcConnecting Our Database with the Express App
Xem trướcWhat Is Mongoose?
Xem trướcCreating a Simple Tour Model
Xem trướcCreating Documents and Testing the Model
Xem trướcIntro to Back-End Architecture: MVC, Types of Logic, and More
Xem trướcRefactoring for MVC
Xem trướcAnother Way of Creating Documents
Xem trướcReading Documents
Xem trướcUpdating Documents
Xem trướcDeleting Documents
Xem trướcModelling the Tours
Xem trướcImporting Development Data
Xem trướcMaking the API Better: Filtering
Xem trướcMaking the API Better: Advanced Filtering
Xem trướcMaking the API Better: Sorting
Xem trướcMaking the API Better: Limiting Fields
Xem trướcMaking the API Better: Pagination
Xem trướcMaking the API Better: Aliasing
Xem trướcRefactoring API Features
Xem trướcAggregation Pipeline: Matching and Grouping
Xem trướcAggregation Pipeline: Unwinding and Projecting
Xem trướcVirtual Properties
Xem trướcDocument Middleware
Xem trướcQuery Middleware
Xem trướcAggregation Middleware
Xem trướcData Validation: Built-In Validators
Xem trướcData Validation: Custom Validators
Xem trướcSection Intro
Xem trướcConnecting Our Database with the Express App
Xem trướcWhat Is Mongoose?
Xem trướcCreating a Simple Tour Model
Xem trướcCreating Documents and Testing the Model
Xem trướcIntro to Back-End Architecture: MVC, Types of Logic, and More
Xem trướcRefactoring for MVC
Xem trướcAnother Way of Creating Documents
Xem trướcReading Documents
Xem trướcUpdating Documents
Xem trướcDeleting Documents
Xem trướcModelling the Tours
Xem trướcImporting Development Data
Xem trướcMaking the API Better: Filtering
Xem trướcMaking the API Better: Advanced Filtering
Xem trướcMaking the API Better: Sorting
Xem trướcMaking the API Better: Limiting Fields
Xem trướcMaking the API Better: Pagination
Xem trướcMaking the API Better: Aliasing
Xem trướcRefactoring API Features
Xem trướcAggregation Pipeline: Matching and Grouping
Xem trướcAggregation Pipeline: Unwinding and Projecting
Xem trướcVirtual Properties
Xem trướcDocument Middleware
Xem trướcQuery Middleware
Xem trướcAggregation Middleware
Xem trướcData Validation: Built-In Validators
Xem trướcData Validation: Custom Validators
Xem trướcSection Intro
Xem trướcDebugging Node.js with ndb
Xem trướcHandling Unhandled Routes
Xem trướcAn Overview of Error Handling
Xem trướcImplementing a Global Error Handling Middleware
Xem trướcBetter Errors and Refactoring
Xem trướcCatching Errors in Async Functions
Xem trướcAdding 404 Not Found Errors
Xem trướcErrors During Development vs Production
Xem trướcHandling Invalid Database IDs
Xem trướcHandling Duplicate Database Fields
Xem trướcHandling Mongoose Validation Errors
Xem trướcErrors Outside Express: Unhandled Rejections
Xem trướcCatching Uncaught Exceptions
Xem trướcSection Intro
Xem trướcDebugging Node.js with ndb
Xem trướcHandling Unhandled Routes
Xem trướcAn Overview of Error Handling
Xem trướcImplementing a Global Error Handling Middleware
Xem trướcBetter Errors and Refactoring
Xem trướcCatching Errors in Async Functions
Xem trướcAdding 404 Not Found Errors
Xem trướcErrors During Development vs Production
Xem trướcHandling Invalid Database IDs
Xem trướcHandling Duplicate Database Fields
Xem trướcHandling Mongoose Validation Errors
Xem trướcErrors Outside Express: Unhandled Rejections
Xem trướcCatching Uncaught Exceptions
Xem trướcSection Intro
Xem trướcDebugging Node.js with ndb
Xem trướcHandling Unhandled Routes
Xem trướcAn Overview of Error Handling
Xem trướcImplementing a Global Error Handling Middleware
Xem trướcBetter Errors and Refactoring
Xem trướcCatching Errors in Async Functions
Xem trướcAdding 404 Not Found Errors
Xem trướcErrors During Development vs Production
Xem trướcHandling Invalid Database IDs
Xem trướcHandling Duplicate Database Fields
Xem trướcHandling Mongoose Validation Errors
Xem trướcErrors Outside Express: Unhandled Rejections
Xem trướcCatching Uncaught Exceptions
Xem trướcSection Intro
Xem trướcDebugging Node.js with ndb
Xem trướcHandling Unhandled Routes
Xem trướcAn Overview of Error Handling
Xem trướcImplementing a Global Error Handling Middleware
Xem trướcBetter Errors and Refactoring
Xem trướcCatching Errors in Async Functions
Xem trướcAdding 404 Not Found Errors
Xem trướcErrors During Development vs Production
Xem trướcHandling Invalid Database IDs
Xem trướcHandling Duplicate Database Fields
Xem trướcHandling Mongoose Validation Errors
Xem trướcErrors Outside Express: Unhandled Rejections
Xem trướcCatching Uncaught Exceptions
Xem trướcSection Intro
Xem trướcModelling Users
Xem trướcCreating New Users
Xem trướcManaging Passwords
Xem trướcHow Authentication with JWT Works
Xem trướcSigning up Users
Xem trướcLogging in Users
Xem trướcProtecting Tour Routes - Part 1
Xem trướcProtecting Tour Routes - Part 2
Xem trướcAdvanced Postman Setup
Xem trướcAuthorization: User Roles and Permissions
Xem trướcPassword Reset Functionality: Reset Token
Xem trướcSending Emails with Nodemailer
Xem trướcPassword Reset Functionality: Setting New Password
Xem trướcUpdating the Current User: Password
Xem trướcUpdating the Current User: Data
Xem trướcDeleting the Current User
Xem trướcSecurity Best Practices
Xem trướcSending JWT via Cookie
Xem trướcImplementing Rate Limiting
Xem trướcSetting Security HTTP Headers
Xem trướcData Sanitization
Xem trướcPreventing Parameter Pollution
Xem trướcSection Intro
Xem trướcModelling Users
Xem trướcCreating New Users
Xem trướcManaging Passwords
Xem trướcHow Authentication with JWT Works
Xem trướcSigning up Users
Xem trướcLogging in Users
Xem trướcProtecting Tour Routes - Part 1
Xem trướcProtecting Tour Routes - Part 2
Xem trướcAdvanced Postman Setup
Xem trướcAuthorization: User Roles and Permissions
Xem trướcPassword Reset Functionality: Reset Token
Xem trướcSending Emails with Nodemailer
Xem trướcPassword Reset Functionality: Setting New Password
Xem trướcUpdating the Current User: Password
Xem trướcUpdating the Current User: Data
Xem trướcDeleting the Current User
Xem trướcSecurity Best Practices
Xem trướcSending JWT via Cookie
Xem trướcImplementing Rate Limiting
Xem trướcSetting Security HTTP Headers
Xem trướcData Sanitization
Xem trướcPreventing Parameter Pollution
Xem trướcSection Intro
Xem trướcModelling Users
Xem trướcCreating New Users
Xem trướcManaging Passwords
Xem trướcHow Authentication with JWT Works
Xem trướcSigning up Users
Xem trướcLogging in Users
Xem trướcProtecting Tour Routes - Part 1
Xem trướcProtecting Tour Routes - Part 2
Xem trướcAdvanced Postman Setup
Xem trướcAuthorization: User Roles and Permissions
Xem trướcPassword Reset Functionality: Reset Token
Xem trướcSending Emails with Nodemailer
Xem trướcPassword Reset Functionality: Setting New Password
Xem trướcUpdating the Current User: Password
Xem trướcUpdating the Current User: Data
Xem trướcDeleting the Current User
Xem trướcSecurity Best Practices
Xem trướcSending JWT via Cookie
Xem trướcImplementing Rate Limiting
Xem trướcSetting Security HTTP Headers
Xem trướcData Sanitization
Xem trướcPreventing Parameter Pollution
Xem trướcSection Intro
Xem trướcModelling Users
Xem trướcCreating New Users
Xem trướcManaging Passwords
Xem trướcHow Authentication with JWT Works
Xem trướcSigning up Users
Xem trướcLogging in Users
Xem trướcProtecting Tour Routes - Part 1
Xem trướcProtecting Tour Routes - Part 2
Xem trướcAdvanced Postman Setup
Xem trướcAuthorization: User Roles and Permissions
Xem trướcPassword Reset Functionality: Reset Token
Xem trướcSending Emails with Nodemailer
Xem trướcPassword Reset Functionality: Setting New Password
Xem trướcUpdating the Current User: Password
Xem trướcUpdating the Current User: Data
Xem trướcDeleting the Current User
Xem trướcSecurity Best Practices
Xem trướcSending JWT via Cookie
Xem trướcImplementing Rate Limiting
Xem trướcSetting Security HTTP Headers
Xem trướcData Sanitization
Xem trướcPreventing Parameter Pollution
Xem trướcSection Intro
Xem trướcMongoDB Data Modelling
Xem trướcDesigning Our Data Model
Xem trướcModelling Locations (Geospatial Data)
Xem trướcModelling Tour Guides: Embedding
Xem trướcModelling Tour Guides: Child Referencing
Xem trướcPopulating Tour Guides
Xem trướcModelling Reviews: Parent Referencing
Xem trướcCreating and Getting Reviews
Xem trướcPopulating Reviews
Xem trướcVirtual Populate: Tours and Reviews
Xem trướcImplementing Simple Nested Routes
Xem trướcNested Routes with Express
Xem trướcAdding a Nested GET Endpoint
Xem trướcBuilding Handler Factory Functions: Delete
Xem trướcFactory Functions: Update and Create
Xem trướcFactory Functions: Reading
Xem trướcAdding a /me Endpoint
Xem trướcAdding Missing Authentication and Authorization
Xem trướcImporting Review and User Data
Xem trướcImproving Read Performance with Indexes
Xem trướcCalculating Average Rating on Tours - Part 1
Xem trướcCalculating Average Rating on Tours - Part 2
Xem trướcPreventing Duplicate Reviews
Xem trướcGeospatial Queries: Finding Tours Within Radius
Xem trướcGeospatial Aggregation: Calculating Distances
Xem trướcCreating API Documentation Using Postman
Xem trướcSection Intro
Xem trướcMongoDB Data Modelling
Xem trướcDesigning Our Data Model
Xem trướcModelling Locations (Geospatial Data)
Xem trướcModelling Tour Guides: Embedding
Xem trướcModelling Tour Guides: Child Referencing
Xem trướcPopulating Tour Guides
Xem trướcModelling Reviews: Parent Referencing
Xem trướcCreating and Getting Reviews
Xem trướcPopulating Reviews
Xem trướcVirtual Populate: Tours and Reviews
Xem trướcImplementing Simple Nested Routes
Xem trướcNested Routes with Express
Xem trướcAdding a Nested GET Endpoint
Xem trướcBuilding Handler Factory Functions: Delete
Xem trướcFactory Functions: Update and Create
Xem trướcFactory Functions: Reading
Xem trướcAdding a /me Endpoint
Xem trướcAdding Missing Authentication and Authorization
Xem trướcImporting Review and User Data
Xem trướcImproving Read Performance with Indexes
Xem trướcCalculating Average Rating on Tours - Part 1
Xem trướcCalculating Average Rating on Tours - Part 2
Xem trướcPreventing Duplicate Reviews
Xem trướcGeospatial Queries: Finding Tours Within Radius
Xem trướcGeospatial Aggregation: Calculating Distances
Xem trướcCreating API Documentation Using Postman
Xem trướcSection Intro
Xem trướcMongoDB Data Modelling
Xem trướcDesigning Our Data Model
Xem trướcModelling Locations (Geospatial Data)
Xem trướcModelling Tour Guides: Embedding
Xem trướcModelling Tour Guides: Child Referencing
Xem trướcPopulating Tour Guides
Xem trướcModelling Reviews: Parent Referencing
Xem trướcCreating and Getting Reviews
Xem trướcPopulating Reviews
Xem trướcVirtual Populate: Tours and Reviews
Xem trướcImplementing Simple Nested Routes
Xem trướcNested Routes with Express
Xem trướcAdding a Nested GET Endpoint
Xem trướcBuilding Handler Factory Functions: Delete
Xem trướcFactory Functions: Update and Create
Xem trướcFactory Functions: Reading
Xem trướcAdding a /me Endpoint
Xem trướcAdding Missing Authentication and Authorization
Xem trướcImporting Review and User Data
Xem trướcImproving Read Performance with Indexes
Xem trướcCalculating Average Rating on Tours - Part 1
Xem trướcCalculating Average Rating on Tours - Part 2
Xem trướcPreventing Duplicate Reviews
Xem trướcGeospatial Queries: Finding Tours Within Radius
Xem trướcGeospatial Aggregation: Calculating Distances
Xem trướcCreating API Documentation Using Postman
Xem trướcSection Intro
Xem trướcMongoDB Data Modelling
Xem trướcDesigning Our Data Model
Xem trướcModelling Locations (Geospatial Data)
Xem trướcModelling Tour Guides: Embedding
Xem trướcModelling Tour Guides: Child Referencing
Xem trướcPopulating Tour Guides
Xem trướcModelling Reviews: Parent Referencing
Xem trướcCreating and Getting Reviews
Xem trướcPopulating Reviews
Xem trướcVirtual Populate: Tours and Reviews
Xem trướcImplementing Simple Nested Routes
Xem trướcNested Routes with Express
Xem trướcAdding a Nested GET Endpoint
Xem trướcBuilding Handler Factory Functions: Delete
Xem trướcFactory Functions: Update and Create
Xem trướcFactory Functions: Reading
Xem trướcAdding a /me Endpoint
Xem trướcAdding Missing Authentication and Authorization
Xem trướcImporting Review and User Data
Xem trướcImproving Read Performance with Indexes
Xem trướcCalculating Average Rating on Tours - Part 1
Xem trướcCalculating Average Rating on Tours - Part 2
Xem trướcPreventing Duplicate Reviews
Xem trướcGeospatial Queries: Finding Tours Within Radius
Xem trướcGeospatial Aggregation: Calculating Distances
Xem trướcCreating API Documentation Using Postman
Xem trướcSection Intro
Xem trướcRecap: Server-Side vs Client-Side Rendering
Xem trướcSetting up Pug in Express
Xem trướcFirst Steps with Pug
Xem trướcCreating Our Base Template
Xem trướcIncluding Files into Pug Templates
Xem trướcExtending Our Base Template with Blocks
Xem trướcSetting up the Project Structure
Xem trướcBuilding the Tour Overview - Part 1
Xem trướcBuilding the Tour Overview - Part 2
Xem trướcBuilding the Tour Page - Part 1
Xem trướcBuilding the Tour Page - Part 2
Xem trướcIncluding a Map with Mapbox - Part 1
Xem trướcIncluding a Map with Mapbox - Part 2
Xem trướcBuilding the Login Screen
Xem trướcLogging in Users with Our API - Part 1
Xem trướcLogging in Users with Our API - Part 2
Xem trướcLogging in Users with Our API - Part 3
Xem trướcLogging out Users
Xem trướcRendering Error Pages
Xem trướcBuilding the User Account Page
Xem trướcUpdating User Data
Xem trướcUpdating User Data with Our API
Xem trướcUpdating User Password with Our API
Xem trướcSection Intro
Xem trướcRecap: Server-Side vs Client-Side Rendering
Xem trướcSetting up Pug in Express
Xem trướcFirst Steps with Pug
Xem trướcCreating Our Base Template
Xem trướcIncluding Files into Pug Templates
Xem trướcExtending Our Base Template with Blocks
Xem trướcSetting up the Project Structure
Xem trướcBuilding the Tour Overview - Part 1
Xem trướcBuilding the Tour Overview - Part 2
Xem trướcBuilding the Tour Page - Part 1
Xem trướcBuilding the Tour Page - Part 2
Xem trướcIncluding a Map with Mapbox - Part 1
Xem trướcIncluding a Map with Mapbox - Part 2
Xem trướcBuilding the Login Screen
Xem trướcLogging in Users with Our API - Part 1
Xem trướcLogging in Users with Our API - Part 2
Xem trướcLogging in Users with Our API - Part 3
Xem trướcLogging out Users
Xem trướcRendering Error Pages
Xem trướcBuilding the User Account Page
Xem trướcUpdating User Data
Xem trướcUpdating User Data with Our API
Xem trướcUpdating User Password with Our API
Xem trướcSection Intro
Xem trướcRecap: Server-Side vs Client-Side Rendering
Xem trướcSetting up Pug in Express
Xem trướcFirst Steps with Pug
Xem trướcCreating Our Base Template
Xem trướcIncluding Files into Pug Templates
Xem trướcExtending Our Base Template with Blocks
Xem trướcSetting up the Project Structure
Xem trướcBuilding the Tour Overview - Part 1
Xem trướcBuilding the Tour Overview - Part 2
Xem trướcBuilding the Tour Page - Part 1
Xem trướcBuilding the Tour Page - Part 2
Xem trướcIncluding a Map with Mapbox - Part 1
Xem trướcIncluding a Map with Mapbox - Part 2
Xem trướcBuilding the Login Screen
Xem trướcLogging in Users with Our API - Part 1
Xem trướcLogging in Users with Our API - Part 2
Xem trướcLogging in Users with Our API - Part 3
Xem trướcLogging out Users
Xem trướcRendering Error Pages
Xem trướcBuilding the User Account Page
Xem trướcUpdating User Data
Xem trướcUpdating User Data with Our API
Xem trướcUpdating User Password with Our API
Xem trướcSection Intro
Xem trướcRecap: Server-Side vs Client-Side Rendering
Xem trướcSetting up Pug in Express
Xem trướcFirst Steps with Pug
Xem trướcCreating Our Base Template
Xem trướcIncluding Files into Pug Templates
Xem trướcExtending Our Base Template with Blocks
Xem trướcSetting up the Project Structure
Xem trướcBuilding the Tour Overview - Part 1
Xem trướcBuilding the Tour Overview - Part 2
Xem trướcBuilding the Tour Page - Part 1
Xem trướcBuilding the Tour Page - Part 2
Xem trướcIncluding a Map with Mapbox - Part 1
Xem trướcIncluding a Map with Mapbox - Part 2
Xem trướcBuilding the Login Screen
Xem trướcLogging in Users with Our API - Part 1
Xem trướcLogging in Users with Our API - Part 2
Xem trướcLogging in Users with Our API - Part 3
Xem trướcLogging out Users
Xem trướcRendering Error Pages
Xem trướcBuilding the User Account Page
Xem trướcUpdating User Data
Xem trướcUpdating User Data with Our API
Xem trướcUpdating User Password with Our API
Xem trướcSection Intro
Xem trướcImage Uploads Using Multer: Users
Xem trướcConfiguring Multer
Xem trướcSaving Image Name to Database
Xem trướcResizing Images
Xem trướcAdding Image Uploads to Form
Xem trướcUploading Multiple Images: Tours
Xem trướcProcessing Multiple Images
Xem trướcBuilding a Complex Email Handler
Xem trướcEmail Templates with Pug: Welcome Emails
Xem trướcSending Password Reset Emails
Xem trướcUsing Sendgrid for "Real" Emails
Xem trướcCredit Card Payments with Stripe
Xem trướcIntegrating Stripe into the Back-End
Xem trướcProcessing Payments on the Front-End
Xem trướcModelling the Bookings
Xem trướcCreating New Bookings on Checkout Success
Xem trướcRendering a User's Booked Tours
Xem trướcFinishing the Bookings API
Xem trướcFinal Considerations
Xem trướcSection Intro
Xem trướcImage Uploads Using Multer: Users
Xem trướcConfiguring Multer
Xem trướcSaving Image Name to Database
Xem trướcResizing Images
Xem trướcAdding Image Uploads to Form
Xem trướcUploading Multiple Images: Tours
Xem trướcProcessing Multiple Images
Xem trướcBuilding a Complex Email Handler
Xem trướcEmail Templates with Pug: Welcome Emails
Xem trướcSending Password Reset Emails
Xem trướcUsing Sendgrid for "Real" Emails
Xem trướcCredit Card Payments with Stripe
Xem trướcIntegrating Stripe into the Back-End
Xem trướcProcessing Payments on the Front-End
Xem trướcModelling the Bookings
Xem trướcCreating New Bookings on Checkout Success
Xem trướcRendering a User's Booked Tours
Xem trướcFinishing the Bookings API
Xem trướcFinal Considerations
Xem trướcSection Intro
Xem trướcImage Uploads Using Multer: Users
Xem trướcConfiguring Multer
Xem trướcSaving Image Name to Database
Xem trướcResizing Images
Xem trướcAdding Image Uploads to Form
Xem trướcUploading Multiple Images: Tours
Xem trướcProcessing Multiple Images
Xem trướcBuilding a Complex Email Handler
Xem trướcEmail Templates with Pug: Welcome Emails
Xem trướcSending Password Reset Emails
Xem trướcUsing Sendgrid for "Real" Emails
Xem trướcCredit Card Payments with Stripe
Xem trướcIntegrating Stripe into the Back-End
Xem trướcProcessing Payments on the Front-End
Xem trướcModelling the Bookings
Xem trướcCreating New Bookings on Checkout Success
Xem trướcRendering a User's Booked Tours
Xem trướcFinishing the Bookings API
Xem trướcFinal Considerations
Xem trướcSection Intro
Xem trướcImage Uploads Using Multer: Users
Xem trướcConfiguring Multer
Xem trướcSaving Image Name to Database
Xem trướcResizing Images
Xem trướcAdding Image Uploads to Form
Xem trướcUploading Multiple Images: Tours
Xem trướcProcessing Multiple Images
Xem trướcBuilding a Complex Email Handler
Xem trướcEmail Templates with Pug: Welcome Emails
Xem trướcSending Password Reset Emails
Xem trướcUsing Sendgrid for "Real" Emails
Xem trướcCredit Card Payments with Stripe
Xem trướcIntegrating Stripe into the Back-End
Xem trướcProcessing Payments on the Front-End
Xem trướcModelling the Bookings
Xem trướcCreating New Bookings on Checkout Success
Xem trướcRendering a User's Booked Tours
Xem trướcFinishing the Bookings API
Xem trướcFinal Considerations
Xem trướcSection Intro
Xem trướcSetting Up Git and GitHub
Xem trướcGit Fundamentals
Xem trướcPushing to GitHub
Xem trướcPreparing Our App for Deployment
Xem trướcDeploying Our App to Heroku
Xem trướcTesting for Secure HTTPS Connections
Xem trướcResponding to a SIGTERM Signal
Xem trướcImplementing CORS
Xem trướcFinishing Payments with Stripe Webhooks
Xem trướcSection Intro
Xem trướcSetting Up Git and GitHub
Xem trướcGit Fundamentals
Xem trướcPushing to GitHub
Xem trướcPreparing Our App for Deployment
Xem trướcDeploying Our App to Heroku
Xem trướcTesting for Secure HTTPS Connections
Xem trướcResponding to a SIGTERM Signal
Xem trướcImplementing CORS
Xem trướcFinishing Payments with Stripe Webhooks
Xem trướcSection Intro
Xem trướcSetting Up Git and GitHub
Xem trướcGit Fundamentals
Xem trướcPushing to GitHub
Xem trướcPreparing Our App for Deployment
Xem trướcDeploying Our App to Heroku
Xem trướcTesting for Secure HTTPS Connections
Xem trướcResponding to a SIGTERM Signal
Xem trướcImplementing CORS
Xem trướcFinishing Payments with Stripe Webhooks
Xem trướcSection Intro
Xem trướcSetting Up Git and GitHub
Xem trướcGit Fundamentals
Xem trướcPushing to GitHub
Xem trướcPreparing Our App for Deployment
Xem trướcDeploying Our App to Heroku
Xem trướcTesting for Secure HTTPS Connections
Xem trướcResponding to a SIGTERM Signal
Xem trướcImplementing CORS
Xem trướcFinishing Payments with Stripe Webhooks
Xem trước
1.2
1 Học viên
275 Khóa học
1253 Đánh giá
Xin chào các bạn, tôi là Nguyễn Đình Cường, một lập trình viên và giảng viên đam mê công nghệ với hơn 15 năm kinh nghiệm trong ngành công nghiệp phần mềm. Tôi tốt nghiệp từ Bưu Chính Viễn Thông và đã từng làm việc cho một số công ty công nghệ hàng đầu như FPT Software và VinGroup. Với chuyên môn chính là phát triển ứng dụng web, tôi đã làm việc với nhiều công nghệ như HTML, CSS, JavaScript, React cho front-end và Node.js, Express, MongoDB cho back-end. Không chỉ dừng lại ở việc viết mã, tôi còn yêu thích tìm hiểu sâu về thiết kế hệ thống và kiến trúc phần mềm. Tôi tin rằng quá trình học lập trình không chỉ đơn thuần là lý thuyết, mà còn là sự trải nghiệm thực tế và giải quyết vấn đề. Trong các khóa học của mình, tôi cố gắng cung cấp cho học viên những bài giảng thú vị và dễ hiểu, cùng với các bài tập thực hành giúp củng cố kiến thức. Tôi hy vọng rằng qua các khóa học của mình, bạn sẽ không chỉ học được cách viết mã, mà còn phát triển tư duy lập trình và kỹ năng giải quyết vấn đề. Hãy cùng nhau khám phá thế giới lập trình và biến ý tưởng của bạn thành hiện thực! Nếu bạn có bất kỳ câu hỏi nào, đừng ngần ngại liên hệ với tôi. Tôi rất vui được hỗ trợ bạn trong hành trình học tập của mình!
Xem chi tiết