在这里首先第一个问题需要被提出,什么是express呢?它的作用是什么呢?express是关于node的一个框架,在其内部集成了很多的方法以及中间件可使我们更加容易的去实现整个项目的路由管理 登录 日志存储 安全性等功能的实现。废话不多说直接进入接下来需要进行学习的点:
- express的安装 2.express的目录介绍 3.express的简单应用实例
1.express安装
首先新建一个文件夹然后运行,之后使用npm install express-generator -g
接着使用express express-test express代表初始化一个express项目 后面则表示项目的名称
接着进入创建好的文件中 使用npm install来安装脚手架工具中所需要的依赖包
然后就是安装cross-dev 以及nodemon 来实时的监控文件的更改 然后在package.josn中去配置指令
“dev” : “cross-dev NODE_ENV=dev nodemon ./bin/www.js”
2.express的目录介绍
在express官方所给的脚手架中,有两个文件夹有views,里面存放的文件是以.jade结尾,在这里主要存储的是视图层
部分的代码逻辑 ,还有pubic 在这里存放的文件主要是js Image 样式表等静态的文件 。express被使用之初的目的就是
用于开发前后端,但是随着前后台分离的思想的产生,在这里我们不需要管这个两个文件夹,只需要将其他处理server
端的文件夹中的内容做好即可。
bin目录,在这个目录下,还有一个www的文件,该文件是一个入口文件,其涉及到端口号,错误监听等信息
的检测
routes目录用于处理路由
app.js各种逻辑的实现部分
以下部分包括app.js中所涉及到的中间件的含义
-
http-errors 用于对错误做出处理,更好的增加用户的体验
-
express 在本节所说的一个工具
-
path node 中自己定义的一个用户获取路径的库
-
cookie-parser 对cookie做出路由的处理
-
morgan 记录日所用的一个中间件
-
indexRouter usersRouter 对于路由的处理
7.所对应的app.use(express.json()) app.use(express.urlencoded({ extended: false }));对于数据的处理
前者用于将数据的形式转化为json 后者则是对于其他形式的数据做出一个处理
8.app.use(cookieParser()) 对于路由去做出一个处理
- app.use(‘/’, indexRouter); app.use(‘/users’, usersRouter); 两者都是对于路由的处理,不同之处在于其
处理的路由不同,两者所表示的都是父级路由,在与之对应的路由文件夹中所对应的则是其子级路由所对应的位置
在这个框架中其处理路由的方式是首先确定路由的传入方式,然后再是对于路径的处理,最后则返回一个函数,
用来处理此路由所返回的结果
下面就举例说一个实际的例子来简单说明express的应用首先看代码:
const express = require(‘express’);
//本次http请求实例
const app = express();
app.use((req ,res ,next ) => {
console.log(‘请求开始。。。。。’, req.method , req.url );
next();
})
app.use((req ,res , next) => {
//假设在处理cookie
req.cookie = {
uerId : ‘5465sh’
}
next();
})
app.use((req ,res ,next) => {
//假设处理 post data
//异步处理
setTimeout(() => {
req.body = {
a: 12346,
b: “dhsh”
}
next();
})
})
app.use(‘/api’,(req ,res ,next) => {
console.log(‘处理 api 路由。。。。’);
next();
})
app.get(‘/api’,(req ,res ,next) => {
console.log(‘处理 get api 路由…’);
next();
})
app.post(‘/api’,(req ,res ,next) => {
console.log(‘处理 post api 路由…’);
next();
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
提升的资深开发者,这些资料都将为你打开新的学习之门!**
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!