ExpressJs server中Router的设置
expressjs的路由设置方法
1. Route Path的3种写法:
实例:
app.get('/opus/.*.html', handler); // 模式字串,用单引号'', 不是RegExp
app.get(/\/opus\/.*\.html/, handler); // RegExp, 用斜杠/ /
只有后者匹配: "/opus/XXXX.html", 前者不
* RegExp正则字串写法
* 模式字串(String Pattern): 只允许少量的特殊标记 ? * +和( ), (备注: 不包括.和-), 含义与RegExp中一样,
b? 匹配{0,1}个b
b+ 匹配{1,n}个b
b* 匹配{0,n}个b
* 普通字串: 没有任何特殊字符
这个3种写法适用于各种http操作(get,put和post), Route Path和Request方法一起定义一个endpoint, 完成一个请求的操作。
2. app.get(),代价小,优先用。 app.use()速度慢
app.get('/', handler): 增加一个路径'/'及其handler到routing 表,只有当http GET '/'的时候, 才调用此handler,永远不会被非"/"的 routes调用。
app.use('/', middleware): 增加一个middleware到stack, .所有以'/'开头的路径(不论http操作是GET/PUT/POST), 都会执行此middleware。
* stack中的每一个middleware都是一个函数,拥有形参(req, res, next)。 stack中的每一个middleware都会被前者通过next()显式调用。
* express.static(__dirname + '/pub') 返回一个middleware专门检查req的path, 并且以streams返回res的content.
///
一、基本方法:
app.METHOD(PATH, HANDLER)
把路径path和操作方法method(可以是http的get/put/delete等),映射到一个处理函数handler
例如:
app.get('/user', function (req, res) {
res.send('Got a PUT request at /user');
});
二、使用express.Router的方法
定义一组路径. 例如:
/birds
/birds/about
1) 先在Router文件中,只定义相对路径/和/about
var express = require('express');
var router = express.Router();
// define the home page route
router.get('/', function(req, res) {
res.send('Birds home page');
});
// define the about route
router.get('/about', function(req, res) {
res.send('About birds');
});
module.exports = router;
2) 在主文件中, 定义base路径/birds,
var birds = require('./birds');
app.use('/birds', birds);
转载于:https://www.cnblogs.com/GameEngine/p/5226235.html
ExpressJs server中Router的设置相关推荐
- 通过 Visual Studio 对 SQL Server 中的存储过程设置断点并进入存储过程对其进行调试...
通过 Visual Studio 的 Professional 和 Team System 版本,我们可以对 SQL Server 中的存储过程设置断点并进入存储过程对其进行调试,这样我们可以象调试应 ...
- Microsoft SQL Server中的事务(转载)
1.1 事务的概念 事务是作为单个工作单元而执行的一系列操作,比如查询和修改数据等. 事务是数据库并发控制的基本单位,一条或者一组语句要么全部成功,对数据库中的某些数据成功修改; 要么全部不成功,数据 ...
- 怎么在服务器中修改sql权限设置密码,SQL server数据库的权限设置
一.登录权限: SQL server的身份验证模式有以下两种: 1. Windows身份验证模式: 当使用Windows身份验证时,SQL server会使用操作系统中的Windows用户和密码.也就 ...
- pads中如何设置等长_如何在SQL Server中设置扩展,监控系统性能
dbForge Studio for SQL Server为有效的探索.分析SQL Server数据库中的大型数据集提供全面的解决方案,并设计各种报表以帮助作出合理的决策. dbForge Studi ...
- sql 如何设置行级锁_SQL Server中的行级安全性简介
sql 如何设置行级锁 In this article, I'm going to discuss Row-Level Security in SQL Server. RLS or Row-Level ...
- 在SQL Server中配置索引创建内存设置的最佳实践
介绍 (Introduction) The Index Create Memory setting is an advanced SQL Server configuration setting wh ...
- nocount on_在SQL Server中设置NOCOUNT ON语句的用法和性能优势
nocount on Have you ever noticed SET NOCOUNT ON statement in T-SQL statements or stored procedures i ...
- 虚拟机中部署ISA Server 2006 防火墙 网络设置(上)
虚拟机中部署ISA Server 2006 防火墙网络 设置(上) 作者:杨坚 在虚拟机中部署 ISA server 2006 不是一件容易的事,相信大家在日常工作也遇到过.对工程师来说困难是每天都会 ...
- sql server中datetime默认值设置和日期函数
sql server中datetime默认值设置和日期函数 select CONVERT(varchar, getdate(), 120 ) -----------------> ...
最新文章
- js php 正则差别,正则表达式(括号)、[中括号]、{大括号}的区别小结,正则表达式小结...
- js编码java解码_js编码处理(转)
- 深度学习再登Science:万物皆可做神经网络处理器,你甚至可以用锅碗瓢盆
- 【已解决】对JSP页面传值中文乱码的简单解决方法
- fread读结构体返回值是0无错误_嵌入式C编程之错误处理(附代码例子)!
- mysql 查外键关联关系 (指定被引用表,查哪些表对其有外键引用)
- OpenCV 头像训练与识别
- carbon----代码美化工具
- win10开机出现任务栏卡死无反应,桌面点击正常,重启任务管理器无效
- nacos + springcloud gateway 出现503错误
- 文献找不到有什么好办法,运用谷粉学术和sci-hub下载各种文献
- 拳皇重生服务器维护,用Kaillera打造拳皇等街机服务器教程
- python向excel写数据_Python 往Excel写数据
- Matlab中num2str函数的用法
- 关于使用jquery weui的picker部分遇到的问题及解决办法
- ts15_Forecast multiple seas_mSTL_make_subplot_rMSPE_UCM_date format_NeuralProphet_changepoint_StateS
- 生活中的英语 —— 新词
- 自考那些事儿(五):软件开发工具(实践篇)
- linux服务器怎么添加路由,linux系统中添加路由的方法
- Eclipse无法加载插件解决办法