Express 文档(常见问题)
常见问题
我该如何构建我的应用程序?
这个问题没有明确的答案,答案取决于你的应用程序规模和所涉及的团队,为了尽可能灵活,Express在结构方面没有做出任何假设。
在你喜欢的任何目录结构中,路由和其他特定于应用程序的逻辑可以存在于你希望的任意数量的文件中,查看以下示例以获取灵感:
此外,还有Express的第三方扩展,简化了其中一些模式:
如何定义模型?
Express没有数据库的概念,此概念由第三方Node模块决定,允许你与几乎任何数据库进行交互。
请参阅LoopBack,了解以模型为中心的基于Express的框架。
如何验证用户身份?
身份验证是Express不会冒险的另一个有争议的领域,你可以使用任何你想要的身份验证方案,有关简单的用户名/密码方案,请参阅此示例。
Express支持哪些模板引擎?
Express支持符合(path、locals,callback)签名的任何模板引擎,要规范化模板引擎接口和缓存,请参阅consolidate.js项目以获取支持,未列出的模板引擎可能仍然支持Express签名。
有关更多信息,请参阅使用Express的模板引擎。
如何处理404响应?
在Express中,404响应不是错误的结果,因此错误处理程序中间件不会捕获它们,这种行为是因为404响应只是表明没有额外的工作要做,换句话说,Express已经执行了所有中间件函数和路由,并发现它们都没有响应,你需要做的就是在堆栈的最底部添加一个中间件函数(在所有其他函数之下)来处理404响应:
app.use(function (req, res, next) {
res.status(404).send("Sorry can't find that!")
})
在express.Router()实例上的运行时动态添加路由,这样路由不会被中间件函数取代。
如何设置错误处理程序?
你可以使用与其他中间件相同的方式定义错误处理中间件,除了使用四个参数而不是三个参数,具体的签名(err, req, res, next):
app.use(function (err, req, res, next) {
console.error(err.stack)
res.status(500).send('Something broke!')
})
有关更多信息,请参阅错误处理。
如何呈现纯HTML?
没有必要使用res.render()函数“渲染”HTML,如果你有特定文件,请使用res.sendFile()函数,如果要从目录提供许多资源,请使用express.static()中间件函数。
上一篇:静态文件
下一篇:路由
Express 文档(常见问题)的更多相关文章
- 常用控件产品官方文档/手册/API列表 c#控件文档API列表 asp.net控件产品技术文档中文版
.netCHARTING报表图表控件 文档帮助手册Ab3d.PowerToys 文档帮助手册Ab3d.Reader3ds 文档帮助手册ABViewer 文档帮助手册 (工程图纸文档管理系统)Activ ...
- 【nodejs之我的开源module】 使用express搭建web服务器,代码即文档的实现。
前言 都说nodejs适合制作restful_API,因为它有异步处理能力,能吞吐更多的请求,这一点是大家都认可的.前不久我使用nodejs+express+postgresql搭建了一个restfu ...
- 转://【MOS】关于在不同版本和平台之间进行还原或复制的常见问题 (文档 ID 1526162.1)--跨版本恢复
Questions and Answers 1) 我能用更高版本的 Oracle 还原或复制旧版本的数据库吗? 2) 我能在两个不同的补丁程序集之间进行还原或复制吗? 3) 我能在同一操作系统的不同版 ...
- .NET生成word文档服务器配置常见问题
注意:安装office2003的时候一定要选择 "完全安装" 而不是 "典型安装" 错误:System.Runtime.InteropServices.COME ...
- [译]Selenium Python文档:八、附录:FAQ常见问题
另外一个FAQ:https://github.com/SeleniumHQ/selenium/wiki/Frequently-Asked-Questions 8.1.怎样使用ChromeDriver ...
- 【Ansible 文档】【译文】常见问题
http://docs.ansible.com/ansible/latest/faq.html 如何为一个task或者整个Playbook设置PATH或者任意其他环境变量? 通过environment ...
- 使用 Swagger 自动生成 ASP.NET Core Web API 的文档、在线帮助测试文档(ASP.NET Core Web API 自动生成文档)
对于开发人员来说,构建一个消费应用程序时去了解各种各样的 API 是一个巨大的挑战.在你的 Web API 项目中使用 Swagger 的 .NET Core 封装 Swashbuckle 可以帮助你 ...
- 在ASP.NET Core Web API上使用Swagger提供API文档
我在开发自己的博客系统(http://daxnet.me)时,给自己的RESTful服务增加了基于Swagger的API文档功能.当设置IISExpress的默认启动路由到Swagger的API文档页 ...
- “全能”选手—Django 1.10文档中文版Part1
本文是博主翻译的Django1.10版本官方文档的第一部分,如时间充裕,争取一直翻译下去,经验不足,或有错漏,敬请指正. 另外对于公开文档进行翻译的版权问题不是很清楚,如有侵权请联系我! 另外,要转载 ...
随机推荐
- Redis 笔记(二)—— STRING 常用命令
字符串中不仅仅可以存储字符串,它可以存储以下 3 中类型的值 : 字符串 整数 浮点数 Redis 可以对字符串进行截取等相关操作,对整数.浮点数进行增减操作. 自增自减命令 命令 用例和描述 INC ...
- shell查询目标jvm的perm占比
#查询指定进程号下面的方法区使用率,jdk1.7是perm,jdk1.8是metaspace function get_perm_use_percent() { pid="$1" ...
- Redis操作,数据库操作
Redis操作,数据库操作 案例1:源码安装Redis缓存服务 案例2:常用Redis数据库操作指令 案例3:配置Redis主从服务器 1 案例1:源码安装Redis缓存服务 1.1 问题 本案例要求 ...
- (js描述的)数据结构[队列结构,优先级队列](3)
(js描述的)数据结构[队列结构](3) 一.队列结构的特点: 1.基于数组来实现,的一种受限的线性结构. 2.只允许在表头进行删除操作,在表尾进行插入操作. 3.先进先出(FIFO) 二.队列的一些 ...
- leetcode c++做题思路和题解(3)——栈的例题和总结
栈的例题和总结 0. 目录 有效的括号 栈实现队列(这个参见队列) 1. 有效的括号 static int top = 0; static char* buf = NULL; void stack(i ...
- AJ学IOS 之BLOCK的妙用_利用block实现链式编程
AJ分享,必须精品 一:场景 我们有个对象人,他有两个方法,一个是学习study,一个是跑步run, 这个人有个怪癖,跑完步之后必须学习,为了实现这个方法并且能调用方便,我们让跑步和学习都回返回自己这 ...
- 【Java】标识符 & 命名规则
Java的标识符和命名规则 什么是标识符[Identifier]? 指用来标识某个实体的一个符号.在不同的应用环境下有不同的含义. 在编程语言中,标识符是开发者编程时使用的名字,对于变量.常量.函数. ...
- C#——继承
在某基类中声明 virtual 并在一个或多个派生类中被重新定义的成员函数称为虚函数. 虚函数的作用就是实现多态性(Polymorphism),多态性是将接口与实现进行分离. C#作为完全面向对象语言 ...
- Golang——详解Go语言代码规范
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是Golang专题的第二篇,我们来看看Go的语言规范. 在我们继续今天的内容之前,先来回答一个问题. 有同学在后台问我,为什么说Gola ...
- Daily Scrum 1/12/2016
Zhaoyang & Yandong: Optimize the speech input interface Fuchen: Code refactor in the NLP module ...