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 ...
随机推荐
- TCP/IP协议 和 如何实现 互联网上点对点的通信
1.参考:https://www.cnblogs.com/onepixel/p/7092302.html TCP/IP 协议采用4层结构,分别是应用层.传输层.网络层 和 链路层 http 属 ...
- 做一个简单的scrapy爬虫
前言: 做一个简单的scrapy爬虫,带大家认识一下创建scrapy的大致流程.我们就抓取扇贝上的单词书,python的高频词汇. 步骤: 一,新建一个工程scrapy_shanbay 二,在工程中中 ...
- 【玩转SpringBoot】异步任务执行与其线程池配置
同步代码写起来简单,但就是怕遇到耗时操作,会影响效率和吞吐量. 此时异步代码才是王者,但涉及多线程和线程池,以及异步结果的获取,写起来颇为麻烦. 不过在遇到SpringBoot异步任务时,这个问题就不 ...
- MAC使用命令行打包出ipa包-通过xcodeproj
参考 : https://www.jianshu.com/p/32af2f71b4e5--老了,里面的一些命令现在都没有了,但可以借鉴思路 https://www.jianshu.com/p/004c ...
- Jenkins构建触发器的区别
Build periodically:定时进行项目构建或执行(它不care源码是否发生变化),配置如下: 0 2 * * * (每天2:00 必须build一次源码) 如果是要定时执行脚本,需要选择 ...
- Get The Treasury【HDU-3642】【扫描线】
题目链接 题目给出的是N个体积块,问的是有多少体积重叠了3次及以上? 那么就是怎么处理体积这样子的问题了,看到Z的种类不多的时候,就想着从Z离散化的角度去考虑这个问题了,然后就是怎样子去处理面积了,这 ...
- 精简Docker镜像的几个方法
一.使用更精简的镜像 常用的Linux系统镜像一般有 Debian.Ubuntu.CentOS和Alpine,其中Alpine是面向安全的轻量级Linux发行版本.Docker的Alpine镜像仅有不 ...
- QT下载与安装
1.下载地址:https://www.qt.io/download-open-source/ 2.qt5.5:http://download.qt.io/development_releases/qt ...
- subprocess 模块 与 re 模块
sub :子 process:进程 用法: import subprocess while True: cmd_str = inport('请输入终端命令:') obj = subprocrss.Po ...
- HDU 1577 WisKey的眼神
WisKey的眼神 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Sub ...