xmpp 的简单 REST HTTP 代理

Posted

技术标签:

【中文标题】xmpp 的简单 REST HTTP 代理【英文标题】:Simple REST HTTP-Proxy for xmpp 【发布时间】:2014-09-20 10:09:59 【问题描述】:

我们目前正在开发一个由 android 应用程序使用的 xmpp 服务器,我们希望使用 xmpp-ftw 和 node.js 通过 HTTP 请求联系 Web 服务器。

现在我们的问题是:如何处理特定请求以对请求做出反应?

https://github.com/xmpp-ftw/xmpp-ftw

例如

127.0.0.1:3000/登录

"jid": "test@evilprofessor.co.uk", "password": "password", "resource": "xmpp-ftw", "host": "127.0.0.1"

登录服务器。它应该是一个简单的包装器。

谢谢

【问题讨论】:

【参考方案1】:

在 HTTP/REST 上执行 XMPP 的问题在于,您需要在服务器上为每个请求保持一个打开的会话,或者对每个请求重新进行身份验证,以后会非常慢。

我们在 buddycloud 项目上创建了一些东西,它允许您执行前者 (https://github.com/buddycloud/buddycloud-http-api),它允许使用 XMPP + HTTP/REST 轻松创建应用程序。你真正失去的是实时方面。

您不会从围绕 XMPP-FTW 的包装器中获得 REST,但您可以获得类似 HTTP 的东西。在身份验证时向用户返回一个 cookie,保持 XMPP 会话打开,并使用 cookie 在每次重新加载时从存储中取出他们的会话。

您打算如何处理实时方面?例如传入聊天?或者这超出了您的计划。

我很乐意为你整理一些东西,但目前很忙,所以恐怕它不会在优先级列表中居高不下。请针对https://github.com/xmpp-ftw/xmpp-ftw提出问题。

干杯,劳埃德。

【讨论】:

链接有错字:githib。这是正确的:github.com/buddycloud/buddycloud-http-api

以上是关于xmpp 的简单 REST HTTP 代理的主要内容,如果未能解决你的问题,请参考以下文章

将旁遮普语设置为 Facebook 聊天的 BOSH XMPP 代理

在Spring MVC控制器中代理HttpServletRequest的最简单方法

使用 REST 代理访问 Ext.data.Model.save() 回调中的 HTTP 响应

如何通过 JSONP 或 HTTP 代理访问 Rally REST API 的 JSON 响应?

XMPP:允许客户端通过代理进行通信?

Undertow - 如何设置反向代理来监控我的 REST API 的 HTTP/HTTPS 流量