超媒体 API 原型框架 Fortune.js

MIT
JavaScript
跨平台
2013-12-18
叶秀兰

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

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))
加载中

评论(3)

gitttttttt
gitttttttt
留一个阿里云免费优惠券->http://aliyun.izhuanyer.com
jQer
jQer
让编程变得无聊的东西 #Fortune.js#
hantsy
hantsy
Hypermedia 上 HAL 已经占了先机,JSON API 不看好。 #Fortune.js#

暂无资讯

暂无问答

mac好玩的命令

##Oh My ZSH! Your terminal never felt this good before.(http://ohmyz.sh/) ##Homebrew OS X 不可或缺的套件管理器(http://brew.sh/index_zh-cn.html) ##cowsay/cowthink * This page gen...

2016/08/16 18:44
82
0
ArduinoYun教程之OpenWrt-Yun与CLI配置Arduino Yun

ArduinoYun教程之OpenWrt-Yun与CLI配置Arduino Yun

2015/07/02 10:58
360
0
换掉Linux Mint terminal上出现的文字

换掉Linux Mint terminal上出现的文字 在oschina上看到linux mint的消息,试用了一下,一下子就喜欢上了这个发行版。其中有个地方觉得很有意思,就是它的terminal上会随机出现三种动物字符图...

2011/06/06 09:36
868
1
有趣的Linux命令

在linux终端里,用这些很有意思的命令,很好玩!!

2013/06/08 16:34
182
0
Linux下有趣的命令

让我们来一起学习一下linux里好玩的命令 screenfetch:显示系统、主题信息 安装使用: sudo apt install screenfetch screenfetch 效果图: linux_logo:linux版本logo图片及系统信息 安装使用...

2016/12/23 09:52
8
0
【天赢金创】10 条真心有趣的 Linux 命令

在终端工作是一件很有趣的事情。今天,我们将会列举一些有趣得为你带来欢笑的Linux命令。 1. rev 创建一个文件,在文件里面输入几个单词,rev命令会将你写的东西反转输出到控制台。 ...

2015/09/23 11:16
49
0
有趣的Linux命令行功效

与喜欢ubuntu的朋友一起分享,新年快乐!

2014/02/10 12:14
124
0
git提交时使用唐词,宋词或者中文谚语做注释

需要用到一个叫fortune的命令行工具,介绍以及安装步骤参见: http://www.ruanyifeng.com/blog/2015/04/fortune.html 安装完毕以后,根据你使用的shell类型找到相关的配置文件(我用的是zsh,所...

2015/04/27 01:48
127
0
使用 /proc 文件系统来访问 Linux 内核的内容(转)

简介: /proc 文件系统是一个虚拟文件系统,通过它可以使用一种新的方法在 Linux® 内核空间和用户空间之间进行通信。在 /proc 文件系统中,我们可以将对虚拟文件的读写作为与内核中实体进行...

2013/07/19 17:02
433
0
Codewar-011 How Much?

I always thought that my old friend John was rather richer than he looked, but I never knew exactly how much money he actually had. One day (as I was plying him with questions) ...

2016/11/26 11:59
6
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部