Android Webservice,REST还是SOAP WSDL?

时间:2012-02-09 11:49:17

标签: android web-services rest soap synchronization

我需要在不同的手机上同步一些数据。例如,我想启用“朋友”(自动)分享笔记......

我现在想知道达到这个目标的最佳方法是什么。

目前我认为我必须编写自己的webservise来实现这一目标。 当我开始考虑使用SOAP Web服务时,我发现很多人都说他们会使用REST方法。

在我的情况下,什么是“更好”的解决方案,还是有其他任何方法可以在不同的Android手机上同步数据?

2 个答案:

答案 0 :(得分:4)

也许我应该首先提到REST不是协议,因此很难与SOAP进行比较。

将SOAP用于移动应用程序的主要缺点是它通常使用XML,因此比大多数其他协议使用更多数据,并且设置和维护都相当复杂。另一方面,如果一方编写服务器而另一方编写客户端,SOAP会为您提供很好的方法来查看清楚地传达的更改(即WSDL)。 SOAP通常在移动电话中得不到很好的支持,并且可能需要第三方库来使其工作。

REST通常(错误地)用作使用JSON的基于HTTP的通信的名称,这是与移动设备通信并且开销较低的非常简单的方法。如果您可以控制服务器和客户端,那么这不是错误的方法(但也不是唯一的方法)JSON通常很容易在所有移动平台上运行,而且电话本身也支持HTTP。 / p>

答案 1 :(得分:1)

使用REST比使用SOAP更好,因为SOAP非常冗长并且会增加网络数据大小。

此外,如果您使用SOAP,则必须包含外部库(如kSOAP)来使用SOAP。使用REST,标准HTTP客户端就可以了。

关于数据格式:考虑一下比XML简洁的JSON。

关于同步,我不知道Android SDK是否提供了执行此工作的类。