Websocket API取代REST API?

我有一个应用程序,其主要功能通过websocket或长时间轮询实时运行。

但是,大多数站点都是以RESTful方式编写的,这对将来的应用程序和其他客户端非常有用。但是,我正在考虑从REST过渡到用于所有站点功能的websocket

API。这将使我更容易将实时功能集成到网站的所有部分。这会增加构建应用程序或移动客户端的难度吗?

我发现有些人已经在做这样的事情:SocketStream

回答:

并不是说这里的其他答案没有道理,它们提出了一些优点。但是,我将违背普遍的共识,并同意您的看法,将Websockets不仅用于实时功能是非常吸引人的。

我正在认真考虑通过websocket将我的应用程序从RESTful架构迁移到更多的RPC样式。这不是一个“玩具应用程序”,我不是在谈论实时功能,所以我确实有保留。但是,我认为走这条路有很多好处,并认为这可能是一个出色的解决方案。

我的计划是使用DNode,SocketIO和Backbone。使用这些工具,只需调用RPC样式的函数,即可在客户端和服务器之间来回传递我的Backbone模型和集合。不再需要管理REST端点,序列化/反序列化对象等等。我尚未使用socketstream,但值得一试。

在我可以肯定地说这是一个很好的解决方案之前,我还有很长的路要走,我敢肯定这不是每个应用程序的最佳解决方案,但是我坚信这种组合将异常强大。我承认存在一些缺点,例如失去缓存资源的能力。但是我感觉优势将胜过它们。

我有兴趣关注您在探索这种解决方案方面的进展。如果您有任何github实验,请指向我。我还没有,但希望很快。

以下是我一直在收集的待读链接的列表。我不能保证它们都是值得的,因为我只浏览了其中许多。但希望能有所帮助。


关于将Socket.IO与Express结合使用的出色教程。它向socket.io公开了快速会话,并讨论了如何为每个经过身份验证的用户提供不同的房间。

  • http://www.danielbaulig.de/socket-ioexpress/

关于具有身份验证,Joyent托管等的node.js / socket.io / backbone.js / express / connect /

jade / redis教程:

  • http://fzysqr.com/2011/02/28/nodechat-js-using-node-js-backbone-js-socket-io-and-redis-to-make-a-real-time-chat-app/
  • http://fzysqr.com/2011/03/27/nodechat-js-continued-authentication-profiles-ponies-and-a-meaner-socket-io/

关于将Pusher与Backbone.js结合使用的教程(使用Rails):

  • http://blog.pusher.com/2011/6/21/backbone-js-now-realtime-with-pusher

使用客户端上的ribs.js和服务器上的express,socket.io,dnode的node.js构建应用程序。

  • http://andyet.net/blog/2011/feb/15/re-using-backbonejs-models-on-the-server-with-node/
  • http://addyosmani.com/blog/building-spas-jquerys-best-friends/
  • http://fzysqr.com/2011/02/28/nodechat-js-using-node-js-backbone-js-socket-io-and-redis-to-make-a-real-time-chat-app/
  • http://fzysqr.com/2011/03/27/nodechat-js-continued-authentication-profiles-ponies-and-a-meaner-socket-io/

在DNode中使用Backbone:

  • http://quickleft.com/blog/backbone-without-ajax-part-ii
  • http://quickleft.com/blog/backbone-without-ajax-part-1
  • http://sorensen.posterous.com/introducing-backbone-redis
  • https://github.com/cowboyrushforth/minespotter
  • http://amir.unoc.net/how-to-share-backbonejs-models-with-nodejs
  • http://hackerne.ws/item?id=2222935
  • http://substack.net/posts/24ab8c

以上是 Websocket API取代REST API? 的全部内容, 来源链接: utcz.com/qa/421872.html

回到顶部