Node.js、Express、MongoDB 等:完整训练营
你将会学到的
- 掌握整个现代后端堆栈:Node、Express、MongoDB 和 Mongoose(MongoDB JS 驱动程序)
- 从头到尾构建一个完整、美观且真实的应用程序(API 和服务器端渲染的网站)
- 构建快速、可扩展、功能丰富的 RESTful API(包括过滤器、排序、分页等)
- 了解 Node 在幕后的真正工作原理:事件循环、阻塞与非阻塞代码、流、模块等。
- 使用 MongoDB 和 Mongoose 进行 CRUD 操作
- 深入研究(包括所有高级功能)
- 如何使用 NoSQL 数据库中的数据(包括地理空间数据)
- 高级身份验证和授权(包括密码重置)
- 安全性:加密、清理、速率限制等。
- 使用 Pug 模板进行服务器端网站渲染
- 使用 Stripe 进行信用卡付款
- 发送电子邮件和上传文件
- 将最终应用程序部署到生产环境(包括 Git 速成课程)
- 项目的可下载视频、代码和设计资源
课程内容
欢迎,欢迎,欢迎!
- 课程结构和项目
- 开始之前请先阅读!
- 让我们安装Node.js
Node.js和NPM简介
- 章节介绍
- 什么是Nodejs以及为什么使用它?
- 在浏览器外运行Javascript
- 使用模块1:核心模块
- 读写文件
- 阻塞和非阻塞:Node.js的异步本质
- 异步读写文件
- 创建一个简单的Web服务器
- 路由
- 构建一个(非常)简单的API
- HTML模板:构建模板
- HTML模板:填充模板
- 从URL解析变量
- 使用模块2:我们自己的模块
- NPM和package.json文件简介
- 软件包类型和安装
- 使用模块3:第三方模块
- 包版本控制和更新
- 在VSCode中设置Prettier
- 回顾和下一步
后端Web开发简介
- 章节介绍
- 网络工作原理概述
- HTTP的实际应用
- 前端与后端Web开发
- 静态、动态、API
Node.js的工作原理:幕后花絮
- 章节介绍
- Node、V8、Libuv和C++
- 进程、线程和线程池
- Node.js事件循环
- 实践中的事件循环
- 事件和事件驱动架构
- 实践中的事件
- 流简介
- 实践中的流
- 需求模块的实际工作原理
- 实践中需要模块
[可选]异步JavaScript:Promises和Async/Await
- 章节介绍
- 回调的问题:回调地狱
- 从回调地狱到Promise
- 兑现承诺
- 使用Async/Await消费Promise
- 从异步函数返回值
- 同时等待多个Promise
Express:让我们开始构建NatoursAPI!
- 章节介绍
- 什么是快递?
- 安装邮递员
- 设置快速和基本路由
- API和RESTfulAPI设计
- 启动我们的API:处理GET请求
- 处理POST请求
- 响应URL参数
- 处理PATCH请求
- 处理DELETE请求
- 重构我们的路线
- 中间件和请求-响应周期
- 创建我们自己的中间件
- 使用第三方中间件
- 实施“用户”路线
- 创建并安装多个路由器
- 更好的文件结构
- 参数中间件
- 链接多个中间件功能
- 提供静态文件
- 环境变量
- 在VSCode中设置ESLint+Prettier
MongoDB简介
- 章节介绍
- 什么是MongoDB?
- 无需本地安装MongoDB
- [可选]在macos上安装MongoDB
- [可选]在Windows上安装MongoDB
- 可选]创建本地数据库
- [可选]CRUD:创建文档
- [可选]CRUD:查询(读取)文档
- [可选]CRUD:更新文档
- [可选]CRUD:删除文档
- 使用CompassApp进行CRUD操作
- 使用Atlas创建托管数据库
- 连接到我们的托管数据库
将MongoDB与Mongoose结合使用
- 章节介绍
- 将我们的数据库与Express应用程序连接
- 什么是猫?
- 创建一个简单的游览模型
- 创建文档并测试模型
- 后端架构简介:MVC、逻辑类型等
- MVC重构
- 创建文档的另一种方法
- 阅读文档
- 更新文件
- 删除文档
- 旅游建模
- 导入开发数据
- 使API变得更好:过滤
- 使API变得更好:高级过滤
- 使API变得更好:排序
- 使API变得更好:限制字段
- 使API变得更好:分页
- 使API变得更好:别名
- 重构API功能
- 聚合管道:匹配和分组
- 聚合管道:展开和投影
- 虚拟财产
- 文档中间件
- 查询中间件
- 聚合中间件
- 数据验证:内置验证器
- 数据验证:自定义验证器
Express的错误处理
- 章节介绍
- 使用ndb调试Node.js
- 处理未处理的路由
- 错误处理概述
- 实现全局错误处理中间件
- 更好的错误和重构
- 捕获异步函数中的错误
- 添加404未找到错误
- 开发与生产期间的错误
- 处理无效的数据库ID
- 处理重复的数据库字段
- 处理Mongoose验证错误
- Express之外的错误:未处理的拒绝
- 捕获未捕获的异常
身份验证、授权和安全
- 章节介绍
- 建模用户
- 创建新用户
- 管理密码
- JWT身份验证的工作原理
- 注册用户
- 登录用户
- 保护旅游路线-第1部分
- 保护旅游路线-第2部分
- 高级邮递员设置
- 授权:用户角色和权限
- 密码重置功能:重置令牌
- 使用Nodemailer发送电子邮件
- 密码重置功能:设置新密码
- 更新当前用户:密码
- 更新当前用户:数据
- 删除当前用户
- 安全最佳实践
- 通过Cookie发送JWT
- 实施速率限制
- 设置安全HTTP标头
- 数据清理
- 防止参数污染
数据建模和高级Mongoose
- 章节介绍
- MongoDB数据建模
- 设计我们的数据模型
- 位置建模(地理空间数据)
- 建模指南:嵌入
- 建模指南:儿童参考
- 充实导游
- 建模评论:家长参考
- 创建和获取评论
- 评论不断增加
- 虚拟填充:游览和评论
- 实现简单的嵌套路由
- Express的嵌套路由
- 添加嵌套GET端点
- 构建处理程序工厂功能:删除
- 工厂功能:更新和创建
- 工厂功能:阅读
- 添加/me端点
- 添加缺少的身份验证和授权
- 导入评论和用户数据
- 使用索引提高读取性能
- 计算旅游的平均评分-第1部分
- 计算旅游的平均评分-第2部分
- 防止重复评论
- 地理空间查询:查找半径内的旅行
- 地理空间聚合:计算距离
使用Postman创建API文档
使用Pug模板进行服务器端渣染
- 章节介绍
- 回顾:服务器端洁染与客户端演染
- 在Express中设置Pug
- 与哈巴狗一起迈出的第一步
- 创建我们的基本模板
- 将文件包含到Pug模板中
- 用块扩展我们的基本模板
- 设置项目结构
- 构建游览概述-第1部分
- 构建游览概述-第2部分
- 构建游览页面-第1部分
- 构建游览页面-第2部分
- 使用Mapbox包含地图-第1部分
- 使用Mapbox包含地图-第2部分
- 构建登录屏幕
- 使用我们的API登录用户-第1部分
- 使用我们的API登录用户-第2部分
- 使用我们的API登录用户-第3部分
- 注销用户
- 消染错误页面
- 构建用户帐户页面
- 更新用户数据
- 使用我们的API更新用户数据
- 使用我们的API更新用户密码
高级功能:付款、电子邮件、文件上传
- 章节介绍
- 使用Multer上传图像:用户
- 配置Multer
- 将图像名称保存到数据库
- 调整图像大小
- 添加图片上传到表单
- 上传多张图片:游览
- 处理多个图像
- 构建复杂的电子邮件处理程序
- Pug的电子邮件模板:欢迎电子邮件
- 发送密码重置电子邮件
- 使用Sendgrid发送“真实”电子邮件
- 使用Stripe进行信用卡付款
- 将Stripe集成到后端
- 在前端处理付款
- 预订建模
- 结帐成功后创建新预订
- 呈现用户预订的旅游
- 完成BookingsAPI
- 最后的考虑因素
设置Git和部署
- 章节介绍
- 设置Git和GitHub
- Git基础知识
- 推送到GitHub
- 准备我们的应用程序进行部署
- 将我们的应用程序部署到Heroku
- 测试安全HTTPS连接
- 响应SIGTERM信号
- 实施CORS
- 使用StripeWebhookks完成付款
就是这样,大家!
- 从这往哪儿走
- 我的其他课程+更新
说明
- 您想使用 JavaScript 构建快速且强大的后端应用程序吗?您想成为一名更全面、更受欢迎的开发人员吗?
- 那么 Node.js 就是您现在学习的热门技术,那么您来对地方了!
- 欢迎来到完整的 Node.js、Express 和 MongoDB 训练营,这是您通往现代后端开发的快速通道。
- 本课程是完美的一体化课程,它将带您从一个完全的初学者成长为一名高级、高技能的 Node.js 开发人员。
- 与我的所有其他课程一样,这门课程完全基于项目!不仅仅是任何项目:它是一个完整、美观且功能丰富的应用程序,包含 RESTful API 和服务器端渲染的网站。这是互联网上任何 Node.js 课程中最精彩、最完整的项目!
- 通过构建这个庞大的项目,您将学习使用Node.js和相关技术规划、构建和部署您自己的现代后端应用程序所需的所有技能。
完成本课程后,您将: - 1)构建您自己的快速、可扩展且功能强大的 Node.js RESTful API 或 Web 应用程序;
- 2)真正理解Node.js在幕后是如何工作的;
- 3)能够在现实情况下使用NoSQL数据和模型数据(一项非常重要的技能);
- 4)了解现代后端开发是如何工作的,以及所有不同的技术如何组合在一起(很难从零散的教程和视频中理解);
- 5)拥有专业使用的工具和库的经验,如Express、Mongoose、Stripe、Sendgrid、Atlas、Compass、Git、Heroku 等;
- 6)已经构建了一个完整的应用程序,这是您将来自己的应用程序的完美起点。
- 请注意,本课程不适合绝对的Web开发初学者,因此您应该已经熟悉基本的 JavaScript。不过不需要后端经验!
- 这是一门内容丰富、深入的课程,内容超过40个小时!
- 由于这是“完整的 Node.js 训练营”,因此该课程充满了大量不同的技术、技巧和工具,因此您在结束课程时将成为一名完整的 Node.js 开发人员。
- 这就是为什么该课程长达40多个小时。但如果这听起来对您来说太多了,请不要担心,您可以安全地跳过一些视频或整个部分。
- 这正是您将要学到的内容:
- Node.js、核心模块和 NPM(节点包管理器)基础知识
- Node.js 在幕后如何工作:事件循环、阻塞与非阻塞代码、事件驱动架构、流、模块等。
- Express(Node.js 框架)的基础知识:路由、中间件、发送响应等。
- 具有高级功能的 RESTful API 设计和开发:过滤、排序、别名、分页
- 使用Pug模板进行服务器端网站渲染 (HTML)
- 本地和Atlas平台(云端)对MongoDB数据库进行CRUD操作
- 高级MongoDB:地理空间查询、聚合管道和运算符
- Mongoose 基础知识(MongoDB JS 驱动程序):数据模型、CRUD 操作、数据验证和中间件
- 高级 Mongoose 功能:地理空间数据建模、填充、虚拟填充、索引等。
- 使用MVC(模型-视图-控制器)架构
- 如何使用 NoSQL 数据库中的数据
- 高级数据建模:数据、嵌入、引用等之间的关系
- 使用 JWT 完成现代身份验证:用户注册、登录、密码重置、安全 cookie 等。
- 授权(用户角色)
- 安全性:最佳实践、加密、清理、速率限制等。
- 使用 Stripe 接受信用卡付款:后端和前端完全集成
- 上传文件和图像处理
- 使用 Mailtrap 和 Sendgrid 发送电子邮件
- 高级错误处理工作流程
- 使用 Heroku 将 Node.js 应用程序部署到生产环境
- Git 和 GitHub 速成课程
- 还有更多!
- 为什么应该学习 Node.js 并参加本课程?
- 如果您想学习 Node.js 和现代后端开发,那么毫无疑问,本课程适合您!
- 它是互联网上最大的 Node.js 课程,拥有迄今为止最完整的课程项目,并对所包含的所有主题提供最深入的解释。
- 即使您已经了解一些 Node.js,您仍然应该参加本课程,因为它包含其他地方没有涵盖的主题,或者深度不同!
- 但也许您还不相信 Node.js 确实是您现在需要学习的正确技术?
- 首先,Node.js 将允许您使用 JavaScript 技能在后端构建应用程序。这本身就是一个巨大的收获,它使您的全栈开发过程变得更加容易和更快。
- 此外,Node.js 的受欢迎程度和机会都超出了预期。这是一项经过验证且可靠的现代技术,被 Netflix、PayPal、Uber 等科技巨头(以及支付 6 位数工资的公司)所使用。
- Node.js 确实是你应该投入时间的东西,而不是像 PHP 这样过时的技术。
- 总之,如果您已经了解 JavaScript,那么学习 Node 就是您的下一步逻辑!它将让您成为一个更好、更全面、更全面的开发人员,这最终将增加您在就业市场的机会!
- 我创建这门课程就是为了帮助您做到这一点!这确实是我第一次学习 Node.js 后端开发和所有相关技术时所希望的课程。
- 嗨,我是乔纳斯!我是Udemy的顶级讲师之一,我的所有高级课程都因其出色的表现和学生满意度而赢得了最畅销的地位。
- 我是一名全栈Web开发人员和设计师,热衷于从头开始构建漂亮的 Web 界面。我自 2010 年以来一直在构建网站和应用程序,并且还拥有工程硕士学位。
- 通过分享我在大学期间所知道的一切,我发现了自己对教学和帮助他人的热情。这种热情促使我于 2015 年加入 Udemy,现在我有幸在 Web 开发领域培训了超过1,500,000 名学习者。
- 学习者最喜欢我所有课程的一点是,我花时间以每个人都能轻松理解的方式解释每个概念。
- 那么,您想了解如何使用现代 HTML 和 CSS 构建出色的网站吗?
- 正在寻找一个完整的JavaScript课程来帮助您从零到高级开发人员?
- 或者您想使用React构建现代且强大的前端应用程序?
- 那么就不要将时间浪费在随机教程或不完整的 YouTube 视频上。我的所有课程都是易于学习的一体化课程,可将您的技能提升到一个新的水平。
- 这些课程正是我第一次进入Web开发时希望拥有的课程!
- 但请您亲自看看,报名参加我的一门课程,并立即加入超过1,500,000 名快乐的学生。
此课程面向哪些人
- 如果您想使用已有的JavaScript技能构建速度惊人且可扩展的后端应用程序,请参加本课程。Node是您的完美工具!
- 如果您是一名前端开发人员,希望使用市场上最完整的课程进入后端开发,请参加本课程。
- 如果您已经参加过其他 Node 课程,但是:1) 仍然没有信心编写实际应用程序,或者 2) 仍然觉得您需要更多后端技能,请参加本课程。本课程非常适合您!
- 如果您是经验丰富的 Node 开发人员,想要添加其他课程中缺少的新技能,请参加本课程:Node 如何在幕后工作、高级数据建模、地理空间数据、完整且安全的身份验证、条带支付等。
声明: 本站所有文章, 如无特殊说明或标注, 均为本站原创发布.任何个人或组织, 在未征得本站同意时, 禁止复制、盗用、采集、发布本站内容到任何网站以及各类媒体平台. 本网站不会在其服务器上存储任何非法文件, 我们仅索引和链接到其他网站提供的内容.由于文档会不定期更新, 课程内容目录仅供参考, 实际以下载文档中的目录为准. 这里任何项目的内容仅供学习试看, 试看后请删除, 请勿用于商业用途. 如若本站内容侵犯了原著者的合法权益, 请提供证据证明您是涉嫌被侵权的唯一所有者, 可联系我们的电子邮箱skillskills(at)protonmail.com进行处理. 请把(at)改成@.