Express Generator 和 KrakenJS 有什么区别?

What's the difference between Express Generator and KrakenJS?

我是 Node 开发的新手,最近开始使用 express。我使用 express generator 开始我的项目,它为我布置文件结构并组织路由、视图等。我最近去了 KrakenJS 的网站,看到它做同样的事情,说它将路由和东西组织到单独的文件夹中。所以我想知道使用一个或另一个的区别或优势是什么?据我了解,他们做同样的事情。如果我错了,请告诉我。

Express Generator 将构建一个 Express 应用程序实例。 KrakenJS 建立在 Express 之上,它们定义了某些约定。生成 kraken 应用程序时,部分约定是应用程序结构。我建议先熟悉 Express,然后再开始使用 Kraken。

为了进一步扩展@theoutlander 的回答,KrakenJS 更像是 express 之上的配置层。

它将几个由 PayPal 创建(并开源)的模块捆绑在一起,以增强普通 vanilla express 服务器的功能。

Kraken 最初是为了满足企业的需求而构建的,因此对于小型项目来说可能有点过分了,但它确实提供了一些非常方便的功能 out-of-the-box:

举几个例子: (注意:如果您看到一个您感兴趣的功能,但不想全部使用,可以将其挑选出来并添加到普通的 express 应用程序中;因为它们都是独立的模块)

  • 安全性:由lusca模块提供。为您提供 XSS、CSRF、X-Frame headers 以及更多 OWASP 最佳安全实践的保护。

  • Environment-specific配置:由confit模块提供。在我看来,这是一个更有用的功能。您可以为您的应用程序单独配置 "profiles"。 (例如:一种特定于您开发的机器的配置,以及一种与您最终部署环境完全不同的配置)

  • 中间件管理:由meddleware模块提供。让您控制中间件的加载顺序,并将其配置为应用程序的外部配置。保持代码整洁,与 confit

  • 结合使用时非常强大

这些只是我认为最有用的几个,但 Kraken 提供的更多功能可让您作为快速开发者的生活更轻松。