是否有完全实现的REST javascript客户端? [关闭]

问题描述 投票:6回答:6

我一直在试验和研究用于RESTful Web服务的javascript客户端。几乎所有我见过的东西似乎都局限于客户端中的重新创建模型定义以及在简单(非相关)模型上进行CRUD。

我正在寻找什么

  • 能够在给定服务器API提供的JSONREST模式的URI的情况下在客户端中动态创建模型(和/或代理和/或存储)
  • 能够本地处理关系(即,不创建一堆自定义函数或覆盖许多内置功能)。我说的是1-> n,1-> 1,n-> 1和n-> m关系。
  • 能够与ExtJS或Dojo等完整功能客户端框架相对较好地工作。

我试过的

  • ExtJS 4.1:优秀的小部件集,能够完全编程布局,'ajax'/'rest'代理为简单模型开箱即用。没有我能找到的IRC或开发社区,对GPL论坛的响应能力有限。
  • Dojo [current]:需要自定义覆盖JsonRestStore以使用基本模型。伟大的小部件,很难完全避免HTML。
  • 我还看了各种基于jquery的工具,还有一点关于backbone.js(http://backbonejs.org目前正在关注。)。 jquery的东西似乎完全脱节了。如果有很好的jquery REST工具,我对他们开放,我只需要指向如何用它们开发连贯和可管理的应用程序的文档。

基本目标

  • 开发可随时修复且“干”的Web客户端应用程序。也就是说,在相关的“类”中,{param1:'asdf',param2:30,...}的复制粘贴很少。理想情况下,如果在服务器上定义它,客户端应该从REST API获取它。如果它是在客户端中定义的,则客户端的其他部分应该能够继承/扩展该定义。

另一种说法:

  • 大多数JS框架都遵循MVC模式。对我来说,这是愚蠢的,因为我的“M”已经在服务器上以及一些“C”。我希望我的客户端成为“Vc”,只重新创建服务器端模型,这是异步操作所必需的,重点是UI表示和用户操作。这意味着理想情况下,“MVC”中的“M”都不会被硬编码到客户端中。

是否有一个功能齐全的JavaScript REST客户端,有人可以指向我。谢谢。

javascript json rest schema
6个回答
2
投票

您最有可能想要查看的一些链接:

Backbonejs.org的替代URL:http://documentcloud.github.com/backbone/

您可能知道,Backbone会根据您的数据创建像集合和模型这样的对象。

关系映射:https://github.com/PaulUithol/Backbone-relational/

如果您想在Backbone中进行关系数据映射,请点击上面的链接

JSON Schema Validator:https://github.com/garycourt/JSV

如果您担心确保遵守某个JSON模式,这很方便,您可以通过覆盖validate方法扩展Backbone.js以验证模型客户端。


2
投票

看看我的Javascript JSON-Hyper-Schema客户端。它使用Angular动态构建HTML客户端应用程序,方法是使用OPTIONS方法解析在给定资源端点提供的Schema。

https://github.com/bpanahij/passportedu_schema/tree/master/client

我一直在使用JSON Hyper Schema处理HATEOAS(超媒体作为应用程序状态的引擎)API。您可以转到下面的URL,浏览,注册,登录并执行某些操作。

看看,这里:http://direct.psprt.com:8081/

到目前为止,我还开源了我的实际API代码:https://github.com/bpanahij/passportedu_schema

随意看看,借用和评论。

[JSON Hyper Schema] [1](参见[JSON-Schema] [2])


1
投票

试试https://github.com/avoidwork/abaaso,我听说过它的好消息。


0
投票

如果您不想要一个完整的框架,请尝试一下:https://github.com/jpillora/jquery.rest这是非常新的,所以请发布问题,错误,功能请求!


0
投票

我认为找到一个好的客户端库的问题是我们(如在Web社区中)还没有完全充分了解REST以及如何构建SERVER库。

HAL(http://stateless.co/hal_specification.html)等技术可能会提供最好的前进方向。如果你有一组提交到HATEOAS(http://en.wikipedia.org/wiki/HATEOAS)并且确实以允许超链接驱动应用程序的方式工作的API,那么你有办法构建非常轻量级的前端,不需要重建每个对象,并重新思考每个业务规则。


0
投票

试试restful.js。富有表现力的语法允许资源嵌套,建立在承诺上,并且不会妨碍您。它的灵感来自Restangular,只是它是独立的。

免责声明:我们写了它。

© www.soinside.com 2019 - 2024. All rights reserved.