Fortune.js 超媒体 API 原型框架开源项目

我要开发同款
匿名用户2013年12月18日
72阅读
开发技术JavaScript
所属分类Web应用开发、JSON/BSON开发包
授权协议MIT

作品详情

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

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

使用简单,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))
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论