express框架总结
1、express教程及api : http://www.runoob.com/nodejs/nodejs-express-framework.html
2、nodejs的express自动生成项目框架-2016 : https://blog.csdn.net/zzwwjjdj1/article/details/51886402 (默认页面模板引擎是jade,想用ejs,使用: express -e xxx)
2、设置 静态文件 路径 : https://blog.csdn.net/qq_34309305/article/details/71552543
var express = require('express');
var app = express();
app.use(express.static('public'));
3、路由:决定由谁(指定脚本)去响应客户端请求
// 主页输出 "Hello World"
app.get('/', function (req, res) {
console.log("主页 GET 请求");
res.send('Hello GET');
}) // POST 请求
app.post('/', function (req, res) {
console.log("主页 POST 请求");
res.send('Hello POST');
}) // /del_user 页面响应
app.get('/del_user', function (req, res) {
console.log("/del_user 响应 DELETE 请求");
res.send('删除页面');
}) // /list_user 页面 GET 请求
app.get('/list_user', function (req, res) {
console.log("/list_user GET 请求");
res.send('用户列表页面');
}) // 对页面 abcd, abxcd, ab123cd, 等响应 GET 请求
app.get('/ab*cd', function(req, res) {
console.log("/ab*cd GET 请求");
res.send('正则匹配');
})
4、创建服务器:
var express = require('express');
var app = express();
var server = app.listen(3000, function() {
console.log('Express is listening to http://localhost:3000');
});
5、express 并不是一定要全局安装使用的。全局安装就是类似vue的一个脚手架,express的全局安装默认是安装了esj 模板(类似php文件一样,html语句嵌套在里面的)的。
6、express脚手架搭建的框架,使用html的设置(默认jade或ejs): 就是加一句改一句。 https://www.cnblogs.com/Leo_wl/p/4361289.html
var app = express(); // view engine setup
app.set('views', path.join(__dirname, 'views'));
app.engine("html",require("ejs").__express); // or app.engine("html",require("ejs").renderFile); 注:加一句
//app.set("view engine","ejs"); 注:改一句
app.set('view engine', 'html');
7、express中,静态文件的相对路径,是以public 文件夹作为相对路径的。https://segmentfault.com/q/1010000008758245 或 https://blog.csdn.net/MPFLY/article/details/78134980
8、使用中间件 :https://expressjs.com/zh-cn/guide/using-middleware.html
app.use() 和 router.use() 区别:前者是设置 应用层中间见,后面是路由器层中间件。两者的 工作方式基本相同,差异之处在于它绑定的实例对象不同。两者回调函数的执行都是在请求时调用。
9、Express.js 中 app 中间件和 router 中间件的区别是什么:https://www.zhihu.com/question/53982540
app的中间件,实际上调用的就是rooter的中间件。
10、路由 的拆分(API):https://www.imooc.com/video/20689
NodeJS+Express+mySQL服务端开发详解:https://www.cnblogs.com/jj-notes/p/6670310.html 或 https://blog.csdn.net/ppx2017/article/details/80809375(推荐)
1、nodeJS的主流模板----jade和ejs的使用: https://blog.csdn.net/zhanghuiqi205/article/details/78570946
2、express中路由请求的 GET请求 分两种,一种页面的请求(url输入地址)、另一种是ajax请求。
//浏览器url上的请求
router.get('/', function(req, res, next) {
res.render('index', { title: 'Express' });
});
// 页面内 ajax 的请求
router.get('/', function(req, res, next) {
res.send('respond with a resource');
});
3、如果模板页面,不用渲染(服务器解析模板代码)的话,应该是可以直接使用 res.send()进行发送的。
4、express中路由很重要,因为不管是页面进入,还是api接口都是通过路由和前端进行交互的。(可以说 服务器和前端交互的入口就是路由了)
5、vscode调试 express: https://www.cnblogs.com/klsw/p/7765427.html
6、express中获取url上的参数:
router.get('/token', function(req, res, next) {
var signature = req.query.signature,//微信加密签名
echostr = req.query.echostr;//随机字符串
res.send(echostr);
});
express框架总结的更多相关文章
- Node.js、Express框架获取客户端IP地址
Node.js //传入请求HttpRequest function getClientIp(req) { return req.headers['x-forwarded-for'] || req.c ...
- Win8.1 安装Express 框架
1.安装Windows Node.js客户端 2.安装Express框架 我本机是Win8.1的,使用命令npm install -g express安装Express,安装完成后显示一些安装明细,刚 ...
- Node.js Express 框架学习
转载:http://JavaScript.ruanyifeng.com/nodejs/express.html#toc0 感觉很牛的样子,不过觉得对初学者没太大用,里面很多例子用的api都没有详细的说 ...
- Node.js Express 框架
Node.js Express 框架 Express 简介 Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP ...
- express框架路由配置及congtroller自动加载
express框架在node官方推荐的一个框架,关于如何入门的文章,已经很多了,我就不在累赘了,本文的核心是如何修改文件使得更接近一个MVC的框架 express原生是通过require的方式实现了模 ...
- nodejs学习笔记二:解析express框架项目文件
上一章介绍了如何去创建一个express框架的工程项目,这章介绍一下express框架下的文件和用法解析,上一张我们创建的工程项目结构图如下: models是不属于原工程项目结构,为了实现数据模型后添 ...
- nodejs学习笔记一:安装express框架并构建工程目录
偶遇node是在一个阳光明媚的上午,无意间打开博客看到一片关于nodejs的介绍,通读全篇后,心情跌宕起伏,哎呀,这么好的东西我竟然现在才知道,这是最气的,于是马上开始制定学习nodejs计划,好了, ...
- Express框架使用以及数据库公共操作类整理(Win7下的NodeJs)
具体步骤: 1.安装开发工具WebStorm: 2.安装node/npm(下载地址:https://nodejs.org/download/)选择适合你的xxx.mis安装: 3.安装express框 ...
- express 框架之session
一.什么是session? 最近在学习node.js 的express框架,接触到了关于session方面的内容.翻阅了一些的博客,学到了不少东西,发现一篇博文讲的很好,概念内容摘抄如下: Sessi ...
- 从零开始学习Node.js例子四 多页面实现数学运算 续一(使用connect和express框架)
1.使用connect框架 .use方法用于绑定中间件到connect服务器,它会配置一系列在接到请求时调用的中间件模块,此例中我们要配置的中间件有favicon logger static rout ...
随机推荐
- 数字电路的与门、或门、非门--FPGA--005
作者:young cc 链接:https://www.zhihu.com/question/23829080/answer/123791730来源:知乎著作权归作者所有,转载请联系作者获得授权. 数字 ...
- 【HDOJ6595】Everything Is Generated In Equal Probability(期望DP)
题意:给定一个N,随机从[1,N]里产生一个n, 然后随机产生一个n个数的全排列,求出n的逆序数对的数量并累加ans, 然后随机地取出这个全排列中的一个子序列,重复这个过程,直到为空,求ans在模99 ...
- 【BZOJ1396】识别子串(后缀自动机,线段树)
题意: 一行,一个由小写字母组成的字符串S,长度不超过10^5 思路:论文题 设p为自动机上的合法结点,r为右端点,len=st[fa[p]]]+1 位置[r-st[p]+1,r-len+1]与r-i ...
- SPOJ - FTOUR2 (点分治+树状数组)
题目:https://vjudge.net/contest/307753#problem/I 题意:有一颗树,上面有白色黑色点,每个点上有一个权值,权值可以为负,现在我要求一条路径,权值和最大,这条路 ...
- LintCode之链表倒数第n个节点
题目描述: 我的代码: /** * Definition for ListNode. * public class ListNode { * int val; * ListNode next; * L ...
- laravel框架手动删除迁移文件后再次创建报错
手动删除laravel框架数据表迁移文件后再次创建报错 如下图: 执行创建操作之后会在autoload_static.php及autoload_classmap.php这两个文件中添加迁移文件的目录. ...
- 面试题:实现strcpy,strlen,strcmp,strcat,memcpy 之c-style字符串
哪里可以看到c库函数的源码? gnu的c运行库glibc,但是源码的实现却是复杂的,需要考虑效率,stlen源码分析. c-style字符串有个约定,以空字符结尾,即 '\0' . ' }; &quo ...
- Linux操作系统(二)_快速入门
环境 安装VM ware,输入VM key 在VM上安装CentOS 6.5 设置网络,能在本机上ping通 通过终端连接工具:Xshell或SecureCRT,连接Linux服务器 实操可能出现的问 ...
- bat 需注意
1. 注释 :: 注释内容,下一行不能是空行,必须是语句否则报错. goto blabla rem 注释内容,则无上述限制. goto blabla 2. if rem 1. 要注意左括号前的空格以及 ...
- AOM
AOM ---- Automation Object Model (自动化对象模型) AOM就是一个可以自动化QTP的自动化对象模型,它可以对QTP的进行自动化配置操作以及QTP的运行回放进行自动化 ...