nodejs中的Express框架基础知识总结

nodejs中的express框架
1 框架:解决web前端网站中客户端请求,服务器接收和响应的过程中的所有基础问题。
2 解决问题:路由
模板引擎
数据库
客户端存储
3 目的:让我们专注页面逻辑,而不用操心页面请求 上传等基础问题,从而提高工作效率。

nodejs中Express模块npm安装
1 npm安装
npm是js代码管理平台,官网:https://www.npmjs.com/;
npm是安装和管理项目所需要的依赖模块,因为支持命令行,所以通过命令行下载安装项目中所需的模块,
其中-g 表示全局安装,–save 表示安装完的模块具体信息写入package.json中;通过npm下载时,会自动创建一个node-modules文件夹,就是放着所需的模块,
2 模块下载:
npm install js文件/包/模块。实现下载模块
npm install ejs -g 表示全局下载ejs模块
npm install ejs --save 表示下载ejs模块具体信息写入到package.json;
3 模块卸载:
npm uninstall js文件名/包/模块 -g 全局卸载
通过npm下载的模块,还需要通过require() ,导入你下载的模块;var ejs = require('ejs’);

nodejs 如何区分你的内置模块 和你下载模块?
require 基本原理:
1 先从内置中找 找不到 就从你的package.json中去找。rquire 路径就会指向 node_modules
静态资源设置
app.use(express.static(‘public’));当访问这些静态资源时,让访问路径直接指向当前项目下的public目录中,public是文件夹,可以更改的
静态资源:图片 js css 字体
app.use(’/a’, express.static(‘public’)); 你访问的静态资源是以/a开头,都指向public
app.get(’/’, function (req, res) {
res.send(’’);所以图片路径前都得加public
}) 当访问路径为根目录下时,静态资源文件路径前要加public;
热部署工具
supervisor-----自动检测到你修改文件(入口文件app.js)修改完成保存之后-并将服务器自动重启
安装:npm install supervisor
cmd运行输入:supervisor app.js
服务器运行:
在package.json中写入以下代码,在cmd运行中输入npm run dev
在这里插入图片描述
路由
需要区分什么样的请求:
app.get() 响应一个get请求
app.post() 响应一个post请求
app.delete() 响应一个delete请求
RESTFULL API请求接口规范:问题在于后端是否支持, 把网站响应看成一个资源: 增删改查。
get: 查 (没有支持restfull 代替删)
post: 增 (没有支持restfull 代提修改)
put: 改 只是改一些某一个信息
detele: 删除
app.use() 接受所有的请求
app.get(‘路由规则’, function () {

})
路由规则:

1 资源: jpg png … txt css js

2 路径: ‘/ok’ 地址栏出现 localhost:8080/ok; ‘/ok/a/c’ localhost:8080/ok/a/c

3 绑定参数:
‘/ok/:id’ localhost:8080/ok/1;
‘/ok/a/c’ request.params.id 1

4 通配: * 前面所有路由 都匹配不到 就会被路由捕获, 必须写在最后面。
app.get(’
’, function (req, res) { *通配所有请求
res.send(‘网页全部拦截’);
})
回调函数: function (request, response) { }

request 表示请求

response 表示响应

模板引擎
1 EJS 是后台模板,可以把我们数据库和文件读取的数据显示到 Html 页面上面。它 是一个第三方模块,需要通过 npm 安装 :
npm install ejs –save / cnpm install ejs --save
渲染到浏览器:ejs.render(filename, data, options, function(err, str){

});
2 EJS 常用标签:
<%%>流程控制标签
<%=%>输出标签(原文输出HTML标签)
<%-%>输出标签(HTML会被浏览器解析,从而不显示标签)
3 模板引擎的配置在这里插入图片描述
4 读取模板引擎
res.render(参数1,参数2);
参数:
1 模板引擎文件 位置 不用写.ejs
2 表示要传递的值(json 字符串 数字);
app.get(’/’, function (req, res){
res.render(‘index/index.html’);
}) 访问根目录下时,显示index下index.html页面
5 让ejs模板引擎 识别html文件 (.ejs)
在这里插入图片描述
注意点:使用ejs模板引擎设置识别的html文件,需要将文件名ejs改为html后缀,改了之后的文件是模板引擎。

你可能感兴趣的:(nodejs中的Express框架基础知识总结)