1.express是什么?
Express 是一个保持最小规模的灵活的 Node.js Web 应用程序开发框架,为 Web 和移动应用程序提供一组强大的功能
2. express的优点?
- express可以帮助我们快速构建web服务器 / api服务器
- express提供了一个快速生成工具 express-generator
- 快速生成工具: 帮助我们快速创建一个项目的工具
3. 安装express-generator
- 全局安装
$ npm i express-generator -g
$ cnpm i express-generator -g
$ yarn add express-generator global
- 如果你的npm版本 在 5.2+以上,那么你可以不使用全局安装,使用npx就可以了
格式:$ npx express 模板配置 项目名称
举例
$ npx express -e express_demo
解释:
-e 指的是我们使用一个叫做ejs的模板 index.ejs 可以兼容html标签,可以书写js语法
4. 项目目录结构
- bin
- www 启动了一个静态服务器( web服务器 )
- node_modules 真个项目的依赖包
- public 静态资源文件
- routes 路由文件夹
- view
- xxx.ejs 项目的模板
- app.js 整个项目的入口文件
- package.json 真个项目的依赖配置文件
5. app.js文件代码解读
- app对象的功能
- 是为了使用一些具有特定功能的函数( 这些函数我们给起了一个名字 , 叫做中间件 )
- 我们通过app.use 来使用这些中间件
- 中间件分类
- 应用级中间价 cors
- 路由中间件 app.get( ‘/’, function ( req,res,next ) {})
- 错误处理中间件 function ( err , req,res,next ) {}
6.express创建api服务器( 接口 )
- api服务器需要使用测试用具来测试,不能用浏览器展示
总结: api服务器就是给前端打造接口
注意: 后端工程师给前端工程师发送的接口数据类型时一个json类型的字符串
前端工程师需要用 JSON.parse() 转换
- restful api 规则 ( 暴露接口的规则 )
举例:
http://localhost:3000/product 商品接口
要求: 删除商品中的一条
http://localhost:3000/product/delete 删除一条商品的接口
要求: 添加一条商品
http://localhost:3000/product/add 添加一条商品接口
要求: 修改一条商品的信息
http://localhost:3000/product/change 修改一条商品接口
上面这种做法对后端压力比较大
对一个的数据的操作,接口太多了
为了解决上面的冗余
我们使用了restful api的规则
什么是restful api ?
一个接口用不同数据请求方式来暴露
将来接口只有一个,但是数据请求方式有多个
http://localhost:3000/product
get
post
delete
put
options
head