什么是Express.js?

vin*_*nod 409 redis node.js express

我是Node.js的学习者.

  1. 什么是Express.js
  2. Node.js的目的是什么?
  3. 为什么我们真的需要Express.js?我们如何使用Node.js有用吗?
  4. 什么是Redis?它是否附带Express.js?

Aza*_*zat 354

1)什么是Express.js?

Express.js是一个Node.js框架.它是目前最受欢迎的框架(NPM上最受欢迎的框架).

在此输入图像描述.

它围绕Connect中间件的配置和粒度简化而构建.有些人将Express.js与Ruby Sinatra与庞大而自以为是的Ruby on Rails进行比较.

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

您不必一遍又一遍地重复相同的代码.Node.js是一个低级I/O机制,它有一个HTTP模块.如果你只是使用一个HTTP模块,很像解析有效载荷,饼干的工作,存储会话(在内存或Redis的),选择基础上,对路由模式正则表达式必须重新执行.使用Express.js可供您使用.

3)为什么我们真的需要Express.js?我们如何使用Node.js有用吗?

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

什么是Redis?它是否附带Express.js?

Redis是一种快速持久的键值存储.您可以选择使用它来存储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)用于许多数据库)堆.

备择方案

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

更新:我整理了这个资源,帮助人们选择Node.js框架:http://nodeframework.com

UPDATE2:我们在nodeframework.com上添加了一些GitHub统计数据,现在您可以在一个页面上比较30多个框架的社交证明级别(GitHub星级).

在此输入图像描述

全栈:

只是REST API:

Ruby on Rails如:

Sinatra喜欢:

其他:

中间件:

静态站点生成器:


cho*_*ovy 247

这简化了它,但是Express.js对于Node.js来说Ruby on RailsSinatraRuby的.

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

然后,您可以使用MongoMongoose等数据库(用于建模)为Node.js应用程序提供后端.Express.js基本上可以帮助您管理从路由到处理请求和视图的所有内容.

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

以下是Express 3.x指南的链接:https://expressjs.com/en/3x/api.html

  • Express更像是sinatra而不是rails. (20认同)
  • Express特别受到sinatra的启发.可能它最重要的特征是路由; 它还提供了connect提供的所有中间件(除了最需要连接的中间件的最具特色的应用程序可能会使用express). (11认同)

Muh*_*zad 13

  1. 什么是Express.js?

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

基于Express构建的框架.

几个流行的Node.js框架构建在Express上:

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

Sails:Node.js的MVC框架,用于构建实用的,可用于生产的应用程序.

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

MEAN:Opinionated fullstack JavaScript框架,简化并加速Web应用程序开发.

  1. Node.js的目的是什么?
  2. 为什么我们真的需要Express.js?我们如何使用Node.js有用吗?

Express为Connect中间件添加了简单的简单路由和支持,允许许多扩展和有用的功能.

例如,

  • 想要会议吗?在那
  • 想要POST主体/查询字符串解析?在那
  • 想要通过玉,胡子,ejs等轻松模板化吗?在那
  • 想要优雅的错误处理,不会导致整个服务器崩溃?


pra*_*aen 10

  1. Express.js是Node.js的模块化Web框架
  2. 它用于更轻松地创建Web应用程序和服务
  3. Express.js简化了开发过程,使编写安全,模块化和快速的应用程序变得更加容易.你可以在普通的旧Node.js中做到这一切,但是一些错误可以(并且将会)浮出水面,包括安全问题(例如,没有正确地转义字符串)
  4. Redis是一种内存数据库系统,以其快速的性能而闻名.不,但您可以使用redis客户端将它与Express.js一起使用

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


小智 5

ExpressJS是裸机上的的NodeJS顶部Web应用程序框架。

它可用于快速构建 WebApp、RESTFUL API 等。

支持 Jade、EJS 等多种模板引擎。

ExpressJS 仅保留一个极简的功能作为核心功能,因此默认不支持 ORM 或 DB。但是稍加努力,expressjs 应用程序就可以与不同的数据库集成。

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

ExpressJS 入门教程