我目前正在开发一个需要一些服务器 - 客户端通信的项目。我们计划在服务器端使用Websockets和Java服务器(Jetty)。因此,发送的消息必须使用来自服务器的Java和来自客户端的JavaScript进行解释。
现在我们正在考虑一个协议以及消息应该具有的结构。我们已经有一个使用XML消息的参考实现。但由于JSON旨在与JavaScript一起使用,我们也在考虑使用JSON-Strings的可能性。
消息将包含由XML字符串和处理此数据所需的一些元信息组成的数据(即将其存储在数据库中,重定向到其他客户端......)。如果消息(解析和创建)的处理在服务器和客户端都很容易和快速,这很重要,因为应用程序应该具有实时速度。
由于我们没有时间测试这两种技术,我会对基于个人经验或技术方面的建议感到高兴。其中一种技术比另一种更有用还是其中一种有任何缺点?
提前致谢。
答案 0 :(得分:10)
在我看来,JSON更容易使用。访问像data.foo.bar.name
这样的东西比尝试以XML方式运行到相应节点要容易得多。
XML可以用于数据文件,虽然仍然不确定,但对于客户端 - 服务器通信,我强烈推荐使用JSON。
答案 1 :(得分:2)
我同意Kolink,
原因是,最好使用JSON,因为XML有一个很大的Header,这意味着每次传输都有很大的开销。
对于iOS或Android,您必须使用JSON而不是WLAN XML。
答案 2 :(得分:2)
你正在打开一堆蠕虫(再次,不是第一次)。
看看这个JSON vs XML。还有一个关于stackoverflow的快速搜索也很好。
这个问题可能会重复。像这样Stackoverflow XML vs JSON。
最后答案保持不变。这取决于你。我虽然同意许多评论,但有时候,XML是过度的(有时候不是)。
答案 3 :(得分:1)
我同意Kolink的观点,但是如果你已经有了一个XML方案,那么我会使用XML来避免Java方面的一些麻烦。这真的取决于谁做了最多的工作。 此外,JSON更紧凑,因此您可以使用其格式节省带宽。
似乎有一些用于在Java中解析JSON的库,因此切换格式可能并不太难。 http://json.org/java/