一、express:

1.express:

Express是什么?

Express是基于node.js平台的web应用开发框架;

作用:可以实现快速搭建骨架;

优点:开发web应用更加方便,更加快捷。

(通过node.js在控制台输出“hello world!”和express在控制台输出“hello world!”进行对比,直接感受express的优点)

Node.js在控制台输出“hello world!”:

const http = require('http');

http.createServer((rep,res)=>{

res.end('hollo world!')

}).listen(2000)

依据上面的代码,当我们需要处理get或post请求时,只能将请求的数据代码写在createSever包裹的函数中;

const express = require('express');

//将express赋值给app,此处可以理解为app相当于express

var app = express();

//处理用户请求:

app.get('/',(req,res)=>{

res.send('hello world!');

})

Express处理请求是通过函数去调用方法,这样一来就更省事了。

了解了express是什么,要想熟练运用express,还需要解析express,接下来总结一下如何解析express:

在解析之前先补充一下如何创建express:

新建一个express文件夹——在express文件夹下打开命令窗口——输入命令:express -e(生成express)——在命令框输入cnpm install

创建好express之后开始解析express文件:

进入package.json文件,查看“scripts:{“start”:”supervisor/bin/www”}”,表示bin/www是入口文件——进去bin/www中(作用:在www中实际就是创建了一个服务器)——进入app.js——进入route(存放路由解析文件)——进入views(存放ejs模板引擎的视图文件/ejs模板引擎作用:后端渲染)

在此有必要提及public优先级,public也是express文件下的一个子文件夹,里面存放的是静态文件,所谓public的优先级就是指在渲染页面时是优先渲染public文件下的静态页面,再渲染views。

二、express中间件:

要理解express中间件,先列举一个生活中的例子,中介大家肯定都很熟悉,我们都知道中介扮演的角色就是把房东的意见反馈给租客,再将租客的意愿传达给房东,在介于房东和租客之间的一个存在,而express中间件类似于中介,是介于请求和回复之间的一个函数。

中间件的生命周期:收到request——在服务端进行处理——处理完发送response回去。

使用中间件即app.use();

Next():使用下一个中间件;

如果当前中间件没有终结请求-响应循环,则必须调用 next() 方法将控制权交给下一个中间件,否则请求就会挂起。使用可选则挂载路径,可在应用级别或路由级别装载中间件。可装载一系列中间件函数,在挂载点创建一个中间件系统栈。

浅析express以及express中间件的更多相关文章

  1. nodejs开发 express路由与中间件

    路由 通常HTTP URL的格式是这样的: http://host[:port][path] http表示协议. host表示主机. port为端口,可选字段,不提供时默认为80. path指定请求资 ...

  2. express-13 中间件

    简介 从概念上讲,中间件是一种功能的封装方式,具体来说就是封装在程序中处理HTTP请求的功能. 中间件是在管道中执行的,在Express程序中,通过调用app.use向管道中插入中间件.(在Expre ...

  3. Express学习(2) ------ 中间件

    TJ Holowaychuck 将 “中间件”描述为易于挂载和调用的模块,可以“无序”使用,并有利于应用的快速开发. 1, 中间件是一个模块.在js中,模块意味着函数,所以中间件是一个函数.那么这个函 ...

  4. 理解express中的中间件

    express是轻量灵活的node.js Web应用框架”.它可以帮助你快速搭建web应用.express是一个自身功能极简,完全是由**路由**和**中间件**构成的一个web开发框架,本质上说,一 ...

  5. express路由和中间件

    路由 简单来说,express路由就是用来处理一些请求,响应一些url地址. var express = require('express'); var app = express(); app.ge ...

  6. express中的中间件理解

    什么是中间件 中间件是一个可访问请求对象(req)和响应对象(res)的函数,在 Express 应用的请求-响应循环里,下一个内联的中间件通常用变量 next 表示.中间件的功能包括: 执行任何代码 ...

  7. 对于Node中Express框架的中间件概念的感知

    中间件是什么呢? 中间件就是客户端http请求发起传送到服务器和服务器返回响应之间的一些处理函数. 为什么要使用中间件? 通过中间件,可以对数据进行操作使得我们能方便地操作请求数据编写服务器响应.如b ...

  8. express中的中间件(middleware)、自定义中间件、静态文件中间件、路由中间件

    express文档地址 什么是中间件呢(middleware)?它是谁的中间件呢? 首先我们需要了解到请求和响应, 请求就是客户端发送请求给服务器, 响应就是,服务器根据客户端的请求返回给客户端的数据 ...

  9. node express 会话管理中间件 --- cookie-parser

    本文转载自:https://www.cnblogs.com/bq-med/p/8995100.html cookie是由服务器发送给客户端(浏览器)的小量信息. 我们知道,平时上网时都是使用无状态的H ...

随机推荐

  1. python入门11 元组tuple

    tuple元组是一种不可变数据类型,也是一种序列,因此可用序列的各类方法,比如切片和索引 #coding:utf-8 #/usr/bin/python """ 2018- ...

  2. 【[APIO2012]派遣】

    题目 直接线段树合并就好了 之后在线段树上二分贪心选取金额较少的 如果是左偏树的话就开一个大根堆,根和子树顺次合并,合并之后堆内所有元素总和如果大于\(m\)就删除堆顶,由于每个元素只会被删除一次,所 ...

  3. 2018.10.10 Java的The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 错误

    我们在用Eclipse进行Java web开发时,可能会出现这样的错误:The superclass javax.servlet.http.HttpServlet was not found on t ...

  4. ssh公钥

    想要将本地电脑的文件传到github上,必须要通过建立本地电脑与github帐号的ssh公钥才行. 方式: 用命令ssh-keygen产生ssh公钥(之后一直按回车就好),然后cd到~/.ssh目录, ...

  5. Several ports (8005, 8080, 8009) required by Tomcat v8.5 Server at localhost are already in use. The server may already be running in another process, or a system process may be using the port. To sta

    eclipse出现:Several ports (8005, 8080, 8009) required by Tomcat v8.5 Server at localhost are already i ...

  6. SQL中char、varchar、nvarchar、text 的区别

    char char是定长的,也就是当你输入的字符小于你指定的数目时,char(8),你输入的字符小于8时,它会再后面补空值.当你输入的字符大于指定的数时,它会截取超出的字符. nvarchar(n) ...

  7. 【luogu P2071 座位安排】 题解

    题目链接:https://www.luogu.org/problemnew/show/P2071#sub 邻接表 + 匈牙利 把之前的邻接矩阵匈牙利变成邻接表 要不然存不下... code: #inc ...

  8. 【luogu P2298 Mzc和男家丁的游戏】 题解

    题目链接:https://www.luogu.org/problemnew/show/P2298 对于迷宫问题,bfs是比较好的选择. 直接bfs模板 #include <iostream> ...

  9. 【luogu P1082 同余方程】 题解

    最近一直在学习数论,讲得很快,害怕落实的不好,所以做一道luogu的同余方程练练手. 关于x的同余方程 ax ≡ 1 mod m 那么x其实就是求a关于m的乘法逆元 ax + my = 1 对于这个不 ...

  10. centos修改hostname

    1.临时修改 hostname localhost 2.永久修改 vim /etc/sysconfig/network 修改hostname的值后保存