介绍
Sails.js是一个Web框架,可轻松构建自定义的企业级Node.js应用程序。它的设计类似于Ruby on Rails等框架的MVC体系结构,但支持Web应用程序和API开发的更现代,面向数据的方式。这对于构建诸如聊天之类的实时功能特别有帮助。
var orgs = await Organization.find();var orgs = await Organization.find();
开源首页
相关特性
Sails是基于Node.js, express 和 socket .io构建的
- 纯粹的Javascript
既然是Nodejs应用,建立在Sails之上意味着您的应用完全使用JavaScript编写
- 支持众多数据库
Sails捆绑了一个强大的 ORM ,即Waterline,它提供了一个简单的数据访问层,你可以使用很多数据库ORM(Waterline)定义完善的适配器系统,可支持各种数据存储。官方支持的数据库包括MySQL,PostgreSQL,MongoDB,Redis和本地磁盘/内存。存在针对 CouchDB ,neDB,TingoDB, SQLite ,Oracle, MSSQL ,DB2, ElasticSearch ,Riak,neo4j,OrientDB,Amazon RDS,DynamoDB,Azure表,RethinkDB和 Solr 的社区适配器;适用于各种第三方 REST API,例如Quickbooks,Yelp和Twitter,包括可配置的通用REST API适配器等等
- 自动生成的REST API
Sails附带了blueprint,可帮助快速启动应用程序的后端,而无需编写任何代码。
- 轻松的WebSocket集成
由于Sails翻译了传入的 套接字 消息,因此它们自动与Sails应用程序中的每条路由兼容
- 声明性,可重用的安全策略
默认情况下,Sails以策略的形式提供基本的安全性和基于角色的访问控制,在控制器和action之前运行可重用的 中间件 功能。大大简化了业务逻辑并减少了需要编写的代码总量。策略可以与Express / Connect中间件互换,这意味着可以插入流行的npm模块(如Passport)
- 稳健的基础
Sails建立在Node.js的基础之上,Node.js是一种流行的轻量级服务器端技术,允许开发人员使用JavaScript编写快速,可扩展的网络应用。Sails使用Express来处理HTTP请求,并包装socket.io来管理WebSockets。因此,如果应用程序确实需要进行底层编程,则可以访问原始的Express或socket.io对象。另一个不错的功能是,现有的Express路由在Sails应用程序中可以很好地工作,因此迁移现有的Node应用程序很容易。
快速开始
- 安装
- 创建一个sails应用
sails new my-app cd my-app sails lift
总结
Sails由于其封装express和socket.io,对于构建实时性较强的应用相较于其他框架来说是友好的,比如聊天类的应用,框架的功能十分的强大,官方也提供了比较全面的文档,遗憾的是只有英文的,但是借助浏览器翻译是可以理解的。