【问题标题】:Tunneling A Protocol Through HTTP - Advice通过 HTTP 隧道协议 - 建议
【发布时间】:2009-11-13 20:50:26
【问题描述】:

现实生活中通过 HTTP 建立隧道的协议的最佳示例是什么? XMPP/Jabber?我正在寻找文档的实际链接?或它们如何隧道的规格。

我正在做一个项目,我想知道我是否应该从 REST、XML-RPC 或 SOAP 开始,然后使用该协议的快速 TCP 风格。或者从低级别开始,然后使用更像 POX 的东西通过 HTTP 隧道。

首先使用此协议的客户端将使用 Ruby、Java 和 .NET 编写,然后可能会分支到 Python、Perl、Scala、Erlang 等......

要求
1) 客户端可以通过 HTTP 通信通道或另一个端口上的直接 TCP 连接到服务器。 TCP 喋喋不休会像 jabber 一样流式传输 XML
2) 我不一定想兼容 XMPP 或编写自己的 XMPP 服务器。
3) 服务器将 100% 用 .NET 编写(但对 Mono 友好)
4) 客户端可以用任何东西编写(但见上文 - 首先是 Ruby、Java 和 .NET)

【问题讨论】:

  • 您可能需要更好地详细说明您的要求。
  • 同上 jldupont。此外,您似乎想要创建一个新协议,而不仅仅是使用您已经提到的协议(REST 等)。
  • AFAIC,您需要一个充分的理由从头开始构建新协议:现有协议的剪切量已经涵盖了很多领域。
  • jldupont,请参阅问题更新。我想我想知道 XMPP 还是我没有想到的其他东西?
  • 这取决于您需要做什么:您刚刚列出了一些“实施约束”,而不是我所说的“市场/设计要求”。

标签: web-services language-agnostic http network-protocols tunneling


【解决方案1】:

基于 HTTP 的协议的优点在于它们测试起来非常容易,以及运行它们的网络/应用服务器可以获得多少控制功能。将查询字符串粘贴给同事并让他们查看您的呼叫和输出真是太棒了。此外,您不必处理任何连接设置和拆除代码,因为(例如)apache 已经为您处理好了。此外,您还可以免费获得各种漂亮的元信息。

【讨论】:

  • 相反,开销相当大,但这对于聊天客户端之类的东西并不重要。
猜你喜欢
  • 1970-01-01
  • 2013-05-31
  • 2011-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-28
  • 1970-01-01
  • 2012-07-31
相关资源
最近更新 更多