超媒体 API 原型框架 Fortune.js

Fortune.js 详细介绍

fortune 是一个超媒体 API 原型框架,实现 JSON API 规范。fortune 具有一个模块化的持久层,里面包括了 NeDB (内联), MongoDB, MySQL, Postgres 和 SQLite 的适配器,可以查看 引导手册 了解如何使用。

Fortune 实现了所有 JSON API 的规范,还有一些其他的特性:

使用简单, Fortune 提供免费的路线控制和数据库交互,不需要用户制作管道。

关联和双向关系的映射,不需要用户管理资源之间的关联关系。

在编辑前或者阅览之后,自动变换资源,实现特定的应用逻辑

fortune 没有相关的授权和身份验证,你可以在你的应用中实现,可以查看样板:keystore.js 。

用 npm 安装:

$ npm install fortune

示例代码:

import fortune from 'fortune'
import http from 'http'

const store = fortune.create()

// The `net.http` function returns a listener function which does content
// negotiation, parses headers, and maps the response to an HTTP response.
const server = http.createServer(fortune.net.http(store))

store.defineType('user', {
  name: { type: String },

  // Following and followers are inversely related (many-to-many).
  following: { link: 'user', inverse: 'followers', isArray: true },
  followers: { link: 'user', inverse: 'following', isArray: true },

  // Many-to-one relationship of user posts to post author.
  posts: { link: 'post', inverse: 'author', isArray: true }
})

store.defineType('post', {
  message: { type: String },

  // One-to-many relationship of post author to user posts.
  author: { link: 'user', inverse: 'posts' }
})

store.connect().then(() => server.listen(1337))

文章转载自 开源中国社区[https://www.oschina.net]

时间: 2024-07-29 11:28:17

超媒体 API 原型框架 Fortune.js的相关文章

浅析Node在构建超媒体API中的作用_node.js

无论是超媒体还是超文本,使用的传输协议都是HTTP,这意味着超媒体可以被所有的浏览器所接受.而描述超媒体的类型我们使用MIME.MIME即Multipurpose Internet Mail Extensions,多用途互联网邮件扩展类型,MIME是一个互联网标准,最早是应用于电子邮件系统的,后来其定义逐步应用到互联网领域.用MIME指定媒体的类型,那么客户端浏览器就能清楚地知道,该如何处理这种类型的媒体. Node.js是基于谷歌V8 JavaScript引擎构建的一种库,主要用于方便.快捷的

设计并实现超媒体API

本文(这一系列的第二篇文章)的主题是超媒体服务器的实现.本文用到的消息设计和问题领域描述已经 在之前的文章中介绍过.在本文中,我们首先会简要介绍超媒体服务器的角色(路由.评估和执行),然后会 讨论它的基础实现,包括组件层.展现层和连接层.最后,我们将简要介绍一个超媒体API的客户端浏览器: 特别是常见的Web浏览器和命令行工具的限制以及"媒体类型浏览器"的优点. 本文详细介绍了使用 Node.js构建一个完整功能的服务器所需的高层细节信息.为了让事情相对简单一些,本文中的示例实现并没

国人开发的比较优秀的js框架:como js

今天 @karryZhang同学提到一个新的国产的js框架como js,我就去看了一下,觉得还不错.另外我们一直在学习和使用老外写的东西,也应该放眼国内,发现并推广一些国人开发的比较优秀的项目. como js是一个比较轻的js框架,但是功能还是比较强大的,实用性比较强.它有以下特性: 对原生对象如String扩展常用函数 简约而快速的CSS选择器 支持类的声明与继承 强大的js包扩展机制,支持CSS按需加载 非侵入式切换调用,与第三方框架并存 高效.易操作的动画执行 支持主流浏览器 当然,可

开源的JS MVC框架 Backbone.js 1.0发布

开源的JS MVC框架 Backbone.js 1.0发布 发表于2013-03-21 09:37| 次阅读| 来源CSDN| 0 条评论| 作者张红月 http://www.aliyun.com/zixun/aggregation/33906.html">JavaScript框架开源Backbone.js 摘要:Backbone.js提供了一套Web开发的框架,通过Model进行key-value绑定及custom事件处理,通过 Collections提供一套 丰富的API用于枚举功能,

基于prototype.js验证框架(validation.js)的三个应用

最近对prototype.js用的比较多,同时发现了一个基于prototype.js的验证框架: validation.js really easy field validation with prototype,下面是我在开发中用到的三个例子. 前提条件: 首先要在html页面中引入几个js <script type='text/javascript' src='../script/prototype.js'></script> <script type='text/jav

Api自动化框架分享

前言 今天把我最近的一点小小的收获分享给到大家,希望能给大家一点帮助和启发-当然最需要的还是大家的意见!  今天给大家分享的是最近开发的一个API自动化框架: 框架定位 1,数据驱动  2,简单流程覆盖,快速迭代  3,组合Case不需要Coding 总而言之只要是代码能够实现的,能方便API测试的都是框架定位的方向~! 框架介绍 边画的很不专业,随便画的应该是还有一个 数据层,所有的都是以数据配置的方式来驱动整个运转的!~ 所需环境 Jenkins + Svn + Maven+TestNG+R

Framer:JavaScript开源原型框架

Framer是一款基于http://www.aliyun.com/zixun/aggregation/33906.html">JavaScript的开源原型框架,可以帮助开发者及设计师轻而易举地创建出非常逼真的应用原型,还包括滤镜.弹性物理.完整的3D效果等.Framer能够同时应用于桌面和移动设备之上,通过它,开发者或设计师只需简单地创建图像.事件等模块即可构建和测试复杂的交互和动画. 使用Framer也是非常简单,在使用Photoshop设计好原型图之后,开发者及设计师可以直接使用Fr

凨-百度地图API之地图标注(JS版),地理位置信息,根据地址获取经度纬度

使用的时候记得更改百度地图的开发者KEY <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>凨-百度地图API之地图标注(JS版),地理位置信息,根据地址获取经度纬度</title> <script type="text

jav语音验证码-大家请问java中语音验证码实现的原理是什么?用到API或者框架是什么?如果实现的?

问题描述 大家请问java中语音验证码实现的原理是什么?用到API或者框架是什么?如果实现的? java中语音验证码实现的原理是什么?用到API或者框架是什么?如果实现的? 还有语音读验证码,大体是怎么做的?求指点 我在网上没找到比较详细的资料