使用protobuf-net与WCF客户端和java服务器

时间:2011-05-17 18:50:14

标签: java .net interop protobuf-net

我们希望使用“协议缓冲区”在.net客户端和Java服务器之间进行通信。

理想情况下,我希望通过WCF使用protobuf-net,因为我们与其他服务的所有其他通信都通过WCF堆栈。

我有一个概念证明.net WCF客户端使用protobuf-net端点行为与.net WCF服务器通信,这似乎工作正常。

我的问题是我们如何配置java服务器以将proto-buf发送到我们的WCF客户端?即我们是否需要将Java服务器作为SOAP服务公开给WCF并将proto-buf发送给它?

2 个答案:

答案 0 :(得分:1)

如果您的WCF客户端使用的是protobuf-net端点,那么它不使用SOAP吗?我不能说我个人使用过protobut-net,但我知道它是SOAP的替代。基本上,看看它使用的协议并实现与servlet相同的协议。老实说,我希望这是相当简单的。

如果它有效并且您可以将servlet作为开源提供,我怀疑您不是唯一一个想要这样做的人:)

答案 1 :(得分:0)

在这种情况下,我强烈建议为协议使用常规 SOAP,并将byte[]Stream(或其他任何工作)公开为有效负载 - 然后处理应用程序中的编码。

WCF中的序列化程序挂钩意味着它基本上类似于byte[]有效负载(基于每个参数/结果),但我无法保证它将是在WCF之外容易解构。

此外......如果您将其描述为包含BLOB的SOAP消息,那么您对SOAP是真实的。