|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/node-express-mongodb-mysql-handlebars-api-rest-jwt/
课程评论:没有评论
**Coursera 课程名称:Node, MongoDB, MySQL, Handlebars, APi Rest, Nestjs (2025)** **课程概述:** 本课程专注于使用 Node.js 构建真实世界的 Web 应用程序,强调实践操作。Node.js 作为一款强大的、跨平台的 JavaScript 服务器端运行环境,具有出色的性能和丰富的生态系统,尤其适合处理异步 I/O 操作。课程将深入教授如何使用 Node.js 结合多种流行技术栈,满足当前市场上对全栈开发人员的高需求。 **核心技术栈与学习内容:** 1. **Node.js 基础:** * 环境搭建与 NPM 包管理。 * 创建基础 HTTP 服务器,理解 Node.js 事件驱动架构。 * 模块化开发与 Nodemon 的使用。 * Express.js 框架的配置、中间件、路由、请求参数处理。 * MVC (Model-View-Controller) 架构模式的实现。 2. **前端模板引擎 Handlebars:** * Handlebars 的安装与配置。 * 创建主模板 (`main.hbs`),集成 Bootstrap 和静态资源。 * 掌握 Handlebars 的数据插值、条件判断、循环等功能。 * 自定义 Handlebars helpers。 * 创建和处理 HTML 表单,包括 POST 请求、文件上传 (`formidable`)。 * 实现 CSRF (跨站请求伪造) 防护。 * 表单验证 (`express-validator`)。 * 使用 Flash Sessions 存储和传递临时消息。 * 利用 Handlebars 的 partials 功能提高代码复用性。 3. **数据库集成:** * **MongoDB (Mongoose):** * Atlas 账户创建与配置。 * Mongoose 的安装与 Express 集成。 * Schema 和 Model 的创建,包括自动 slug 生成 (`pre save`)。 * Model 之间关系的管理。 * 基于 Handlebars 的 MongoDB CRUD 操作。 * 高级查询技巧:`find`、`findById`、`populate`、`lean`、`sort`、`aggregate` (`$lookup`、`$unwind`)。 * **MySQL (Sequelize):** * Sequelize 的安装与 `mysql2` 集成。 * Model 创建与表之间关系(`belongsTo`, `foreignKey`)。 * `beforeCreate` 钩子实现。 * 基于 Handlebars 的 MySQL CRUD 操作。 * 查询过滤:`where`、`raw`、`findAll`、`findOne`、`include`、`order`、`nested`。 * 用户管理:使用 `bcryptjs` 实现密码哈希,配合 `nodemailer` 发送邮箱确认。 * 认证与授权 (Passport): * Passport 中间件的安装与配置。 * 为 Handlebars 传递 Local 变量。 * 实现通用登录策略。 * 创建中间件保护受保护路由。 4. **API 开发:** * 构建 RESTful API,支持 MongoDB。 * 构建 RESTful API,支持 MySQL。 * 文件上传 API。 * 使用 JWT (JSON Web Token) 保护 API 路由。 5. **高级框架与工具:** * **NestJS:** 介绍 NestJS 框架及其优势。 * **TypeORM / Prisma:** 了解 TypeORM 和 Prisma 作为 NestJS 的 ORM 解决方案。 * **Swagger:** API 文档生成与测试。 **课程特色:** * **实战驱动:** 强调通过动手编码来学习,构建实际项目。 * **技术栈全面:** 覆盖后端主流技术(Node.js, Express, MongoDB, MySQL, ORM, 认证),以及前端模板引擎,满足全栈需求。 * **市场导向:** 教授当前热门且需求量大的全栈开发技能,包括 RESTful API 的构建。 * **深入讲解:** 涵盖从基础到高级的各种主题,帮助学员建立扎实的知识体系。 * **项目导向:** 学习如何构建单体应用和 API 服务,支持与移动端(Android/iOS)等应用进行交互。
Node.js es un entorno en tiempo de ejecución multiplataforma, de código abierto, para la capa del servidor basado en el lenguaje de programación JavaScript, asíncrono, con E/S de datos en una arquitectura orientada a eventos y basado en el motor V8 de Google.Cuenta con una amplia documentación y una gran comunidad detrás, además de una amplia presencia en el mercado. Existe mucha demanda de desarrollo para Node, sobre todo de consultoras que buscan personas para trabajar de forma remota.En este curso aprenderás a crear aplicaciones reales para el mercado, con una base enteramente orientada a meter las manos en el código. Aprenderás a crear aplicaciones monolíticas con Handlebars, y a disponibilizar APIs Rest (lo más demandado hoy en día para perfiles MEAN, MEAR, y MEVN, y también para comunicarse con aplicaciones Android o IOS, entre otras aplicaciones más).Introducción técnico-teóricaInstalación NPM (Node package manager)Instalación NodeHola mundo, creación de servidor HTTP básicoInstalación de módulos en Node. Instalación y configuración de NodemonInstalación de expressConfiguración de expressImplementación de middlewareConfiguración de rutasParámetros de ruta express y query stringImplementación de MVC (Modelo Vista Controlador)Handlebars, configuración middleware inicialHandlebars, creación de template main.hbsHandlebars, implementación de Bootstrap, recursos estáticosHandlebars, interpolación, condicionales y ciclosHandlebars, creación de helpers personalizadosHandlebars, Creación de formulariosHandlebars, recibir formularios vía POST con ExpressHandlebars, implementación de CSRF (Cross-site request forgery)Validación de formularios con Express-ValidationHandlebars, sesiones FlashHandlebars, formularios y upload de archivos con formidableMongodb, configuración de cuenta en AtlasMongoose, instalación y configuración dentro de ExpressMongoose, creación de modelosMongoose, implementación de pre save, para slug automático en modelosMongoose, modelos y relaciones entre esquemasMongoose, CRUD (Create, Read, Update, Delete) con HandlebarsMongoose, uso de filtros en find, findById, populate, lean, sort, aggregate, $lookup, $unwindSequelize, instalación y configuración con mysql2Sequelize, creación de modelosSequelize, relaciones de tablas con belongsTo y foreignKeySequelize, implementación de beforeCreateSequelize, CRUD (Create, Read, Update, Delete) con HandlebarsSequelize, implementación de filtros where, raw, findAll, findOne, include, order, nestedGeneración de reportes PDF con html-pdfGeneración de reportes EXCEL con excel4nodeGeneración de reportes CSV con json2csvSequelize, creación de modelo de usuarios con contraseña hasheada con bcryptjsSequelize, registro de usuarios, envío de mail de confirmación con nodemailerPassport, instalación y configuraciones principales mediante middlewaresPassport, creación de variables locals para handlebarsHandlebars, creación e implementación de partialsPassport, implementación de login con estrategia comúnPassport, creación de middleware para rutas protegidasPassport, Implementación de middleware para rutas protegidasAPI Rest con MongoDBAPI Rest con MySQLAPI Rest Upload de archivosAPI Rest, protección de ruta con JWTNestjsTypeORMPrismaNestjs JWTPassportSwagger