express.js 示例应用程序 [关闭]
Posted
技术标签:
【中文标题】express.js 示例应用程序 [关闭]【英文标题】:express.js sample apps [closed] 【发布时间】:2012-10-13 17:31:06 【问题描述】:我正在启动一个 express.js 项目。我想看看退出大型应用程序的代码,尤其是它们的文件系统结构。有人知道使用 express.js 并且在 github 上的应用吗?
【问题讨论】:
【参考方案1】:github 上有大量使用 express 的应用程序。对于大型项目,您可以查看 krakenjs.com。这不是一个真正的应用程序,而更像是一个由 paypal 从 java 切换到 node.js 时创建的应用程序的结构。
如果您想使用 angular.js 和 mongodb,您还可以查看更全栈的应用程序结构,例如 mean.io 或 meanjs.org。即使您不知道,您也可以了解他们如何构建代码。
【讨论】:
【参考方案2】:查看可以在 github repository 找到的 express 示例。如果你喜欢 MVC,那么还有一个 example 。它们让您初步了解如何构建应用程序。
有关如何构建您的应用程序的更多信息,请参见“我应该如何构建我的应用程序?”下的 faq。
【讨论】:
【参考方案3】:这是我的布局。
./myapp
./public -- static files
./modules -- modules I made for reusability
./routes -- like controllers
./log -- app log file
./views -- ejs views
./config -- config.development.js, config.global.js
./templates -- email templates (text/html in ejs)
./pid -- for server
./init -- git post-receive hook for deploy
./models -- mongoose schemas
【讨论】:
【参考方案4】:这不是一个非常大规模的项目,但它为您提供了有关如何构建应用程序的基本概念,它是一个 REST API https://github.com/khurrumqureshi/BotnikServer
【讨论】:
【参考方案5】:在我的快递应用中,我或多或少有这样的结构:
project
|--app.js
|--bin
| `--shell scripts and stuff*
|--docroot
| `--static files, etc*
|--node_modules
| `--npm downloads go here*
|--lib
| |--vendor
| | `--jar files and stuff*
| |--my-custom-middleware1.js
| `--my-custom-middleware2.js
|--package.json
|--README.md
`--templates
`--a bunch of templates*
可以很好地满足我的需要。
【讨论】:
【参考方案6】:Express 有点臭名昭著,因为它没有关于如何布置文件夹结构和构建大型应用程序的任何具体指导。公平地说,它并不是真的打算成为“Rails”,它更像是一个简化基本 HTTP 功能的轻层。
Github 上可能有一些 Express 示例,但我没有想到。
您可能想看看RailwayJS,它更接近于 Express 之上的预期“Rails”。您可能还想查看用于大型应用程序的Geddy。 Geddy 不是基于 Express,但对如何构建所有内容有更明确的指导。
【讨论】:
我认为没有项目结构示例的原因是因为每个人都倾向于做自己的风格。 在很多情况下这很糟糕。适当的结构是好的——它提高了可维护性和可重用性。 @Pius 我同意 Express 人员对结构的一些指导会很棒。在他们的辩护中,他们试图构建一些轻量级的东西,只提供基本的管道,如 cookie、静态文件、身份验证、变量传递。虽然一个成熟的网络应用程序在特定的地方需要模型、视图和控制器等东西,但 Express 也可以用于许多不“成熟”的目的。我有一个由 Express 提供支持的站点,该站点仅提供静态文件并呈现 Jade 文件。并非所有东西都需要完整的堆栈。【参考方案7】:看看我对ExpressJS How to structure an application 的回答。您还可以查看repo for my own web site,它虽然不大也不令人兴奋,但它是一个快速应用程序,并且具有非常健全的文件系统和代码组织方案 (IMHO)。
当然,浏览list of ExpressJS applications on the main Express site。不确定哪些是开源的,但请看一看。
【讨论】:
看起来列表已移至 expressjs.com/resources/applications.html 其中一个(至少)在 github 上有其来源:github.com/feross/studynotes以上是关于express.js 示例应用程序 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 express.js 在 Ajax 调用中实现 CSRF 保护(寻找完整示例)?
UnhandledPromiseRejectionWarning、Express.js 和 Node.js