创建一个 Express 应用。express()是一个由 express 模块导出的入口(top-level)函数。

//最顶级:top-level

内置方法

express.static(root, [options])

1.express.static 是 Express 内置的唯一一个中间件

//表达.静态(根,选项)

2.root 参数指的是静态资源文件所在的根目录。

3.options 对象是可选。

options 对象属性
属性 描述 类型 默认值
点文件(dotfiles)              选择.服务。可能的值是“允许”、“拒绝”和“忽略” string      忽视(ignore)
实体标签(etag)                启用或禁用etag生成                             Boolean               true
扩张(extensions)               设置文件扩展名后备。                            boolean                false
索引(index)                  发送目录索引文件。设置false以禁用目录索引。        混合(Mixed)             index.html
上次修改时间(lastModified)         将最后修改的头部设置为操作系统上最后修改的日期。可能的值是真或假。     Boolean               true
最大年龄(maxAge)   以毫秒为单位设置缓存格式(Cache-Control)报头的max-age属性或ms格式的字符串 number               0
重定向(redirect)              当路径名是一个目录时,重定向到后面的“/”。            Boolean                true
设置头部(setHeaders)            用于设置HTTP头与文件一起使用的函数。                    Function

application(申请)

The app object conventionally denotes the Express application. Create it by calling the top-level express() function exported by the Express module:

//app对象通常表示Express应用程序。通过调用Express模块导出的顶级Express()函数来创建它:

var express = require('express');
var app = express(); app.get('/', function(req, res){
res.send('hello world');
}); app.listen(3000);

这app对象方法是

1.路由HTTP请求;例如,app.method和app.param。

2.配置中间件;看到app.route。

3.渲染HTML视图;看到app.render。

4.注册一个模板引擎;看到app.engine

Properties属性

app.locals

1.局部变量的对象是一个JavaScript对象,它的属性是应用程序中的局部变量。

app.locals.title
// => 'My App' app.locals.email
// => 'me@myapp.com'

一旦设置好,应用程序的值就会一直存在于应用程序的整个生命周期中,这与res.本地属性形成了鲜明的对比,这些属性仅适用于请求的生命周期。

您可以在应用程序中呈现的模板中访问局部变量。这对于为模板提供助手函数以及应用程序级数据非常有用。但是请注意,您不能在中间件中访问局部变量。

app.locals.title = 'My App';
app.locals.strftime = require('strftime');
app.locals.email = 'me@myapp.com';

  

app.mountpath安装路径

app.mountpath属性是安装子应用程序的路径模式(s)。

子应用程序是express的一个实例,它可以用于处理路由请求。

var express = require('express');

var app = express(); // the main app //主程序
var admin = express(); // the sub app //子程序 admin.get('/', function (req, res) {
console.log(admin.mountpath); // /admin
res.send('Admin Homepage');
}) app.use('/admin', admin); // mount the sub app //挂载子程序

 如果一个子应用被安装在多个路径模式上,那么app.mountpath将返回它被安装的模式列表,如下面的例子所示。

var admin = express();

admin.get('/', function (req, res) {
console.log(admin.mountpath); // [ '/adm*n', '/manager' ]
res.send('Admin Homepage');
}) var secret = express();
secret.get('/', function (req, res) {
console.log(secret.mountpath); // /secr*t
res.send('Admin Secret');
}); admin.use('/secr*t', secret); // load the 'secret' router on '/secr*t', on the 'admin' sub app
app.use(['/adm*n', '/manager'], admin); // load the 'admin' router on '/adm*n' and '/manager', on the parent app

 

Events事件函数

app.on('mount', callback(parent))

//mount 安装,callback 回调函数,parent父

挂载事件是在一个子应用上触发的,当它被安装在一个父应用程序上时,父应用程序被传递给回调函数。

var admin = express();

admin.on('mount', function (parent) {
console.log('Admin Mounted');
console.log(parent); // refers to the parent app
}); admin.get('/', function (req, res) {
res.send('Admin Homepage');
}); app.use('/admin', admin);

 中间件

//中间件就是出来http的请求函数(req),特点就是处理一个中间件再传递给下一个中间件。

///中间件可以接收三个参数,HTTP请求(req),HTTP回应(res),回调函数(next)

//每个中间件都可以对HTTP请求(request对象)进行加工,并且决定是否调用next方法,将HTTP请求(request对象)再传给下一个中间件。

Express内置方法的更多相关文章

  1. python黑魔法 -- 内置方法使用

    很多pythonic的代码都会用到内置方法,根据自己的经验,罗列一下自己知道的内置方法. __getitem__ __setitem__ __delitem__ 这三个方法是字典类的内置方法,分别对应 ...

  2. python常用数据类型内置方法介绍

    熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 下面介绍了python常用的集中数据类型及其方法,点开源代码,其中对主要方法都进行了中文注释. 一.整型 a = 100 a.xx ...

  3. 7.python字符串-内置方法分析

    上篇对python中的字符串内置方法进行了列举和简单说明,但这些方法太多,逐一背下效率实在太低,下面我来对这些方法按照其功能进行总结: 1.字母大小写相关(中文无效) 1.1 S.upper() -& ...

  4. 6.python字符串-内置方法列举

    所谓内置方法,就是凡是字符串都能用的方法,这个方法在创建字符串的类中,下面是总结: 首先,我们要学习一个获取帮助的内置函数 help(对象) ,对象可以是一个我们创建出来的,也可以是创建对象的那个类, ...

  5. python 字典内置方法get应用

    python字典内置方法get应用,如果我们需要获取字典值的话,我们有两种方法,一个是通过dict['key'],另外一个就是dict.get()方法. 今天给大家分享的就是字典的get()方法. 这 ...

  6. 内置方法+lambda是pythonic的利器

    python可以写的非常简洁,通过使用内置的map,reduce,filter,lambda方法,非常具有文艺范. 举个例子,例如 def fromIpToNum(ipAddr):    return ...

  7. 字符串:各种奇葩的内置方法 - 零基础入门学习Python014

    字符串:各种奇葩的内置方法 让编程改变世界 Change the world by program 字符串:各种奇葩的内置方法 或许现在又回过头来谈字符串,有些朋友可能会觉得没必要,也有些朋友会觉得不 ...

  8. s14 第4天 关于python3.0编码 函数式编程 装饰器 列表生成式 生成器 内置方法

    python3 编码默认为unicode,unicode和utf-8都是默认支持中文的. 如果要python3的编码改为utf-8,则或者在一开始就声明全局使用utf-8 #_*_coding:utf ...

  9. while补充,字符串和数字的内置方法

    一.while循环的补充 while True: name=input('please input your name: ') password=input('please input your pa ...

随机推荐

  1. C# 执行DOS命令和批处理

    在项目开发中,有时候要处理一些文件,比如视频格式的转换,如果用C开发一套算法,再用C#调用,未免得不偿失!有时候调用现有的程序反而更加方便.今天就来说一下C#中如何调用外部程序,执行一些特殊任务. 这 ...

  2. qt: 系统默认程序打开文件或者软件;

    Qt提供了QDesktopServices类, 可以利用openUrl函数调用默认程序打开文件: 源码参考: #ifdef Q_OS_WIN32 m_szHelpDoc = QString(" ...

  3. npm install 之前做的事

    在一个项目目录中,npm install之前,需要npm init,npm init会问你几个问题,有的需要输入,不想输入的一路回车就行,之后会自动创建一个package.json文件,有了这个pac ...

  4. 校园wifi

    我校师生访问本校校园WiFi(SSID为UESTC-WiFi),不受任何影响,用户名和密码均不变,可使用本校帐号加后缀@uestc.edu.cn,登录并免费使用eduroam联盟机构的WiFi(SSI ...

  5. 选择性搜索(SS)算法

    一.目标检测和目标识别 目标识别(object recognition)是要指明一张图像中包含哪类目标.输入是图像,输出是图像中的目标属于的类别(class probability).目标检测是识别出 ...

  6. python数据结构之堆(heap)

    本篇学习内容为堆的性质.python实现插入与删除操作.堆复杂度表.python内置方法生成堆. 区分堆(heap)与栈(stack):堆与二叉树有关,像一堆金字塔型泥沙:而栈像一个直立垃圾桶,一列下 ...

  7. python的wxpython包

    1,wxpython包简介 图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面. wxpython这个包就可以被用 ...

  8. docker创建Redis集群

    开始工作: yum install wegt ##安装下载工具 yum install net-tools ##安装网络工具 yum install tree ##安装tree命令(方便查看集群配置文 ...

  9. vivado中使用ROM IP核

    1.在project中选择IP Catalog 在IP Catalog中选择---->Block Memory Generator------>RAMs&ROMs&BRAM ...

  10. codeforces 1082G - Petya and Graph 最大权闭合子图 网络流

    题意: 让你选一些边,选边的前提是端点都被选了,求所有的边集中,边权和-点权和最大的一个. 题解: 对于每个边建一个点,然后就是裸的最大权闭合子图, 结果比赛的时候我的板子太丑,一直T,(不会当前弧优 ...