C#.NET远程处理服务器和Java客户端

本文关键字:服务器 Java 客户端 处理 NET 程处理 | 更新日期: 2023-09-27 18:25:28

我想知道是否可以让Java客户端与用C#编写的服务器进行通信。NET。

维基百科上写着:

"在客户端,对远程对象的任何请求都由.NET远程处理运行时通过通道对象代理,通道对象封装了实际的传输模式,包括TCP流、HTTP流和命名管道。因此,通过实例化适当的通道对象,.NET远程处理应用程序可以支持不同的通信协议,而无需重新编译应用程序。 "

这就是为什么我认为Java应用程序应该可以连接到ServerIP:Port,并通过TCP通道交换甚至是复杂的对象。

问题是,是否有一个库可以将接收到的数据转换回有效的Java对象?

或者还有更好的方法吗?

任何帮助都会很棒。非常感谢。

Stefan

C#.NET远程处理服务器和Java客户端

您不能直接将复杂的Java对象加载到中。Net或反之亦然,但您可以在客户端&服务器,并利用JSON(如bas的答案所示)来序列化&通过通道传输这些对象。

这意味着当一个对象从A->B发送时,它会经过以下顺序:

  1. 从A中的托管对象Seralize到JSON
  2. 通过传输通道从A->B发送JSON
  3. 在B处以字符串形式接收JSON对象
  4. 将对象反序列化为托管对象供B使用

步骤1&4是类似NetwonSoft Json的地方。网络图书馆将对你有很大帮助。任何网络协议都可以沿线路传输JSON对象。

您可以使用JSON或XML格式发送和接收数据

C#的JSON:http://james.newtonking.com/pages/json-net.aspx

用于Java的JSON:http://json.org/java/