loopback 简介

loopback 文档的简略的翻译

第一部分 Loopback 核心概念

 

1 Model 模块

2 Application logic 应用逻辑

3 Data source and connector 数据资源以及连接这些资源的连接器

4 Loopback component  loopback的一些小的子模块

5 Example 例子

 

Model 模块

模块 :loopback的核心

              可以表示一些后端的数据资源, 像数据库 以及一些后端的服务(例如支持REST SOAP 的一些后端的服务)在这里我们可以把整个的后端服务想象成一些一个个独立的模块,数据库,服务都可以成为独立的 小的模块。

 同时 loopback 本身你就可以把它看作是一个同时具有 NODE 和RESTAPI 特性的模块。

Loopback一个关键的厉害的特性:当你定义一个模块, 这个模块生成时就已经带有提前定义好的RESTAPI (带有createread update delete等操作)

基本的模块:

         自带有可以与其他模块联结的方法

          自带有验证数据的方法

其他的一些模块其实就是从基本模块继承而来的,这是模块的一个继承图。 当你用一个模块去链接一个像数据库一样的永久性的数据资源, 这个模块就会成为一个连接模块,这个连接模块有增删检查的一些操作。 Loopbackbuild-in 模块就是继承这个连接模块而来的。

 

定制模块

你可以在你的application中定义你自己的模块, 你自己的模块也可以是通过扩展已有的内建模块,这样你自己的模块也可以拥有在内建模块中已经定义好的User  Application 和其他的被这个内建模块所使用的内建模块。

你可以有许多种方式去构建你自己的模块,这取决于你想使用哪一种数据源去构建你的模块

三种方法:

1 Loopback自带的模块生成器

2 使用现有的关系型数据库 (用modeldiscovery),然后通过使用一些loopbackschema/ model synchronization API 去同步你的模块。

3 By instanceintrospection for free-form data in NoSQL databases orREST APIs. 不确定这个是怎么用的

这三种方法都会生成 Model definition JSON file 这个文件时用来在Loopback里定义你的模块的。Loopback规定这个文件在 common/models 文件夹中。

你也可以通过Loopback API 编程的方式创建你自己的模块, 或者手动编辑Model definition JSON file 这个文件。 大多数情况下,你不需要用这种方式去创建, 但是你需要用这种方式去修改和定制你自己的模块。

模块之中会有一些关系像是BelongsToHasMany, and HasAndBelongsToMany. 之后有机会再做详细介绍

 

 

模块的增删检查操作

当你生成一个用于连接数据块的模块的时候,这个模块就成为一个联结模块,联结模块本身具有增删检查的方法。这写方法是来自于一个叫PersistedModel的类。

以上列出来的一些方法只是一些著名的例子,他还会提供一些类似功能的方法。具体的请参照 PersistedModel APIdocumentation 

 

Application logic 应用逻辑

有以下几种方式你可以自己定制你需要的应用于你自己的application的逻辑。

1 把应用逻辑添加到model的remoteMethod 中 (你需要自己定制你的REST Api, 在remoteMethod)remoteMethod会触发 remote hooks 模块中增删检查的方法也会触发 operationhooks

2 添加boot script 当你的application启动的时候就会被运行到

3 定义你想要定制的中间件  也是一种添加应用逻辑的方式

中间件阶段

中间件是什么

中间件指的是一些列被调用的 functions, 这些function的运行是在 http请求生成后直到RESTAPI 被处理之前。 这个REST API 是你自己定义在你自己的模块remoteMethod 中。

Loopback是基于Express 所以loopback中的中间件类似于Express中的中间件的。但是在Loopback中,增加了phases阶段的概念,这个概念是为了清楚地定义中间件执行的顺序。阶段可以帮助我们避免那些出现在Express中的那些由顺序产生的问题。

Data sources and connector 数据源和连接器

Loopback 把一些后端服务像数据库,REST API, SOAP web service通用作 data source

在data source之后是connector ,connector才会直接与真正的数据库 和 后端的服务交流。Application不会直接使用connector, 而是通过data source 或者是PersistedModel APIs,在解释一遍PersistedModel APIs 其实就是loopback提供用来和真正的数据库交互的一组API.

Loopback component( loopback中的一些小的模块)

主要是用来提供一些额外的附加功能

1推送功能   发送信息到移动app

2 存储服务 允许上传下载数据到云存储(Amazon, Rackspace, Openstack,and Azure)以及loopback的服务上。

3 第三方登录 Facebook, Google, Twitter, Github, or 任何支持OAuth, OAuth 2, or OpenID 的第三方

4 同步允许移动端离线操作,等到重新连接时再同步数据

5 OAuth 2.0  主要用于验证权限

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值