非宁静接口背后的Restful API

问题描述:

我试图找到相关的最佳实践/规格/文献/等。到在不安静的外观背后使用restful API(比如标准的Rails应用程序)的一般问题,如XMPP API或websockets通道。非宁静接口背后的Restful API

例如,我有一个restful的Rails应用程序,我想公开一个只读的异步接口。这非常简单,Rails应用程序推送到Redis pubsub频道,然后从node.js中消耗,然后发送到websocket频道(1)。现在,我如何才能最好地使这个异步API读/写?我想客户端通过websockets通道发送到服务器,基本上等于序列化的http请求或轻量级json编码的有效载荷,然后转到Resque队列,然后从主应用程序解析,但是我想知道是否有以前的工作/规格/体系结构可以构建,或者只是我可能忽略的更优雅的方法。 (1)很显然,你可以用'xmpp'替换'websockets',而普遍的关注,非平静接口背后的应用程序仍然适用。

在此先感谢您的帮助。

我不确定除了调用/响应的方法之外真的有什么区别。

例如,在网络世界中,所有对REST接口的调用通常由浏览器完成,在浏览器中进行任何状态跟踪,在服务器端处理Web客户端。因此,客户端接口通常会发送大量数据(直接或间接通过cookie)以允许服务器重建呼叫的上下文。

在呼叫发生的基于XMPP协议(波什或直接)或WebSockets的,你需要做同样的,因为客户端将讨论到中间时,XMPP组件或机器人,接收节的组成要求,收集任何存储的状态,然后将其传递给REST。

在最基本的形式中,XMPP机器人/组件将仅接收传入节,将其转换为REST调用,进行调用并打包结果。