摘要:常见问题我该如何构建我的应用程序这个问题没有明确的答案,答案取决于你的应用程序规模和所涉及的团队,为了尽可能灵活,在结构方面没有做出任何假设。请参阅,了解以模型为中心的基于的框架。
常见问题 我该如何构建我的应用程序?
这个问题没有明确的答案,答案取决于你的应用程序规模和所涉及的团队,为了尽可能灵活,Express在结构方面没有做出任何假设。
在你喜欢的任何目录结构中,路由和其他特定于应用程序的逻辑可以存在于你希望的任意数量的文件中,查看以下示例以获取灵感:
路由列表
路由图
MVC风格控制器
此外,还有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()中间件函数。
上一篇:静态文件 下一篇:路由文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/100436.html
摘要:要使用多个静态资源目录,请多次调用中间件函数按照使用中间件函数设置静态目录的顺序查找文件。注意为获得最佳结果,请使用反向代理缓存来提高服务静态资源的性能。 静态文件 要提供静态文件(如images、CSS文件和JavaScript文件),请使用Express中的express.static内置中间件功能,函数签名是: express.static(root, [options]) ro...
摘要:文档基于的快速开放极简主义的框架,是一个最小且灵活的应用程序框架,为和移动应用程序提供了一组强大的功能。借助无数的实用程序方法和中间件,你可以快速轻松地创建强大的。提供了一层轻薄的基本应用程序功能,而不会隐藏你熟悉和喜爱的功能。 Express 文档 基于Node.js的快速、开放、极简主义的Web框架,Express是一个最小且灵活的Node.js Web应用程序框架,为Web和移动...
摘要:这些路由方法指定当应用程序收到对指定路由端点和方法的请求时调用的回调函数有时称为处理函数,换句话说,应用程序监听与指定路由和方法匹配的请求,并且当它检测到匹配时,它调用指定的回调函数。 路由 路由是指应用程序的端点(URI)如何响应客户端请求,有关路由的介绍,请参阅路由基础。 使用与HTTP方法相对应的Express app对象的方法定义路由,例如,app.get()用于处理GET请求...
摘要:简介是中的一个处理的中间件可以说是中最常见的中间件之一了由于会话管理依赖的使用所以它的中有很多用于控制的部分总的来说有如下的特点管理基本功能签名可替换持久储存模块本文中使用的版本为安装引入使用使用签名这个属性是必须的具体配置和 简介 express-session是express中的一个处理session的中间件,可以说是express中最常见的中间件之一了. 由于会话管理依赖cook...
摘要:常见问题此系列文章的应用示例已发布于可以帮助改进或关注更新欢迎替代它更像是,但是很多的好东西被转移到的中间件级别,以帮助形成更强大的基础。这使得中间件对于整个堆栈而言不仅仅是最终应用程序代码,而且更易于书写,并更不容易出错。 常见问题 此系列文章的应用示例已发布于 GitHub: koa-docs-Zh-CN. 可以 Fork 帮助改进或 Star 关注更新. 欢迎 Star. Koa...
阅读 1787·2021-09-22 15:29
阅读 3301·2019-08-30 15:44
阅读 3521·2019-08-30 15:43
阅读 1736·2019-08-30 13:48
阅读 1455·2019-08-29 13:56
阅读 2431·2019-08-29 12:12
阅读 927·2019-08-26 11:35
阅读 1006·2019-08-26 10:25