Express路由(二)

Express 是一个自身功能极简,完全是由路由中间件构成一个的 web 开发框架

概述
路由用于确定应用程序如何响应对特定端点的客户机请求
包含一个 URI(或路径)和一个特定的 HTTP 请求方法(GET、POST 等)。

语法:app.METHOD(PATH, HANDLER)

app 是 express 的实例。
METHOD 是 HTTP 请求方法。
PATH 是服务器上的路径。
HANDLER 是在路由匹配时执行的函数。

例子:

var express = require('express');
var app = express();
//定向HTTP请求
app.get('/', function(req, res){
  res.send('hello world');
});

app.listen(3000);

路由 与 Application

创建一个Application对象实例,也就是创建一个Express应用。app对象一般在Express应用的app.js文件中创建,通过app对象,可以实现定向HTTP请求、配置中间件、渲染HTML、配置模板等。

1. 定向HTTP请求。如:app.METHOD、app.param
2. 配置中间件。如:app.route
3. 渲染HTML视图。如:app.render
4. 设置模板引擎。如:app.engine

application的主要方法

1. 绑定监听端口: app.listen(port, [hostname], [backlog], [callback])
2. 定义GET/PUT/DELETE/POST
    app.get(path, callback [, callback ...])
    app.put(path, callback [, callback ...])
    app.delete(path, callback [, callback ...])
    app.put(path, callback [, callback ...])
3. 定义路由处理器:app.all(path, callback [, callback ...])
4. 创建路由:app.METHOD(path, callback [, callback ...])

使用正则表达式的路由路径示例:

// 匹配任何路径中含有 a 的路径:
app.get(/a/, function(req, res) {
  res.send('/a/');
});

// 匹配 butterfly、dragonfly,不匹配 butterflyman、dragonfly man等
app.get(/.*fly$/, function(req, res) {
  res.send('/.*fly$/');
});

扩展:

1. URI:Uniform Resource Identifier,统一资源标识符;
2. URL:Uniform Resource Locator,统一资源定位符;
3. URN:Uniform Resource Name,统一资源名称。

正则表达式到底是什么东西?

字符是计算机软件处理文字时最基本的单位,可能是字母,数字,标点符号,空格,换行符,汉字等等。字符串是0个或更多个字符的序列。文本也就是文字,字符串。说某个字符串匹配某个正则表达式,通常是指这个字符串里有一部分(或几部分分别)能满足表达式给出的条件。
元字符,metacharacter

代码 说明
. 匹配除换行符以外的任意字符
\w 匹配字母或数字或下划线或汉字
\s 匹配任意的空白符
\d 匹配数字
^ 匹配字符串的开始
$ 匹配字符串的结束

参考
正则表达式

更多精彩内容请关注“IT实战联盟”哦~~~


IT实战联盟.jpg
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容