什么是Express.js?

我是Node.js中的学习者。

  1. 什么是Express.js ?
  2. Node.js的目的是什么?
  3. 为什么我们实际上需要Express.js? 如何使用Node.js对我们有用?
  4. 什么是Redis ? 它是否与Express.js一起?

这不过是简化它,但是Express.js是Node.js , Ruby on Rails或Sinatra是Ruby 。

Express 3.x是一个轻量级的Web应用程序框架,可帮助您将Web应用程序组织到服务器端的MVC体系结构中。 您可以为您的模板语言(如EJS , Jade和Dust.js )使用多种select。

然后,您可以使用像MongoDB这样的数据库(用于build模)为Node.js应用程序提供后端。 Express.js基本上可以帮助您pipe理所有事情,从路由到处理请求和视图。

Redis是一个关键/值存储 – 通常用于Node.js应用程序中的会话。 你可以做更多的事情,但这就是我用它。 我使用MongoDB来处理更复杂的关系,比如行项目< – >订单< – >用户关系。 有一些模块(最值得注意的是connect-redis)可以与Express.js一起使用。 您需要在服务器上安装Redis数据库。

以下是Express 3.x指南的链接: http : //expressjs.com/guide.html

1)什么是Express.js?

Express.js是一个Node.js框架。 这是目前最stream行的框架(最突出的NPM)。

在这里输入图像说明

它是围绕Connect中间件的configuration和精简的简单构build的。 有些人将Express.js与Ruby Sinatra相比,而笨重且自以为是的Ruby on Rails 。

2)Node.js的目的是什么?

你不必一遍又一遍地重复相同的代码。 Node.js是一个具有HTTP模块的低级I / O机制。 如果你只是使用HTTP模块,像parsing有效负载,cookie,存储会话(在内存或Redis中 ),基于正则expression式select正确的路由模式的许多工作将不得不重新实现。 Express.js在那里供您使用。

3)为什么我们实际上需要Express.js? 如何使用Node.js对我们有用?

第一个答案应该回答你的问题。 如果不是,则尝试使用普通的Node.js(即,仅使用核心模块),然后在Express.js中编写一个小的REST API服务器。 后者将带你5-10倍的时间和代码行。

什么是Redis? 它是否与Express.js一起?

Redis是一个快速持久的键值存储。 您可以select使用它来存储与Express.js的会话,但不需要。 默认情况下,Express.js具有会话的内存存储空间。 Redis也可用于排队作业,例如电子邮件作业。

使用Express.js查看我在REST API服务器上的教程 。

MVC,但不是自己

Express.js本身不是模型 – 视图 – 控制器框架。 您需要将自己的对象关系映射库(如Mongoose for MongoDB,Sequelize( http://sequelizejs.com )用于SQL数据库,Waterline( https://github.com/balderdashy/waterline )用于许多数据库)叠加。

备择scheme

其他Node.js框架考虑( https://www.quora.com/Node-js/Which-Node-js-framework-is-best-for-building-a-RESTful-API ):

更新:我把这个资源放在一起,帮助人们selectNode.js框架: http : //nodeframework.com

UPDATE2:我们为nodeframework.com增加了一些GitHub统计数据,所以现在你可以在一个页面上比较30多个框架的社会certificate(GitHub stars)的水平。

在这里输入图像说明

全栈:

只是REST API:

Ruby on Rails如:

Sinatra喜欢:

其他:

中间件:

静态站点生成器:

  1. Express.js是Node.js的模块化Web框架
  2. 它用于更容易地创buildWeb应用程序和服务
  3. Express.js简化了开发过程,使编写安全,模块化和快速应用程序变得更加容易。 你可以在普通的旧Node.js中完成所有的工作,但是一些bug可能会(也将会)出现,包括安全问题(比如不能正确地转义string)
  4. Redis是一款以快速性能着称的内存数据库系统。 不,但可以使用Express.js使用redis客户端

我不能比这更简洁。 对于您的其他需求和信息,Google是您的朋友。

  1. 什么是Express.js?

Express.js是一个Node.js Web应用程序服务器框架,用于构build单页面,多页面和混合Web应用程序。 这是node.js事实上的标准服务器框架。

构build在Express上的框架。

一些stream行的Node.js框架构build在Express上:

LoopBack:高度可扩展的开源Node.js框架,用于快速创builddynamic的端到端REST API。

Sails:Node.js的MVC框架,用于构build实用的,生产就绪的应用程序。

Kraken:通过提供结构和约定来扩展Express的安全和可扩展层。

意义:意见的全面JavaScript框架,简化和加速Web应用程序开发。

  1. Node.js的目的是什么?
  2. 为什么我们实际上需要Express.js? 如何使用Node.js对我们有用?

Express增加了对Connect中间件的简单路由和支持,允许许多扩展和有用的function。

例如,

  • 需要会议? 在那
  • 希望POST正文/查询stringparsing? 在那
  • 想要通过玉,胡子,ejs等轻松模板? 在那
  • 希望优雅的error handling,不会导致整个服务器崩溃?

Express只是Node的一个模块框架,您可以使用基于服务器的应用程序来监听来自客户端的任何input/连接请求。 在Node中使用它时,只是说您要求使用Node模块中的内置Express文件。

Express是许多Web应用程序的后端在NodeJS中的“骨干”。 据我所知,其主要资产是处理2台主机之间“交互”服务的路由系统。 有很多的select,如帆。 希望我的回答有帮助。

ExpressJS是NodeJS基础上的基础 Web应用程序框架。

它可以用来快速构buildWebApps,RESTFUL API等。

支持多种模板引擎,如Jade,EJS。

ExpressJS只保留最低限度的function作为核心function,因此默认情况下不支持ORM或DB。 但是有一点点努力expressjs应用程序可以与不同的数据库集成。

有关创buildExpressJS应用程序的入门指南,请查看以下链接:

ExpressJS入门教程

Express.js是一个用于Node的框架,它最常用作节点js的Web应用程序。

这里是一个链接到video如何快速build立一个节点的应用程序快速https://www.youtube.com/watch?v=QEcuSSnqvck

Express.js由TJ Holowaychuk创build,现在由社区pipe理。 它是node.js中最stream行的框架之一。 Express也可用于开发各种产品,如Web应用程序或RESTful API。有关更多信息,请在expressjs.com官方网站上阅读。