0

What is the actual difference b/w WCF vs REST service in a client perspective? I’m aware the following difference WCF Support Multiple Transportation protocols, Hosting, WS-* Features and based on SOAP Message, etc. REST service based on URI’s with HTTP verbs, JSON/XML formats and Hypermedia as State Management, No need of WSDL documents etc. I can easily consume a WCF service from JavaScript client by using JQUERY like “Service Name/Method Name” with JSON DATA , I never faced any complication in regards to SOAP messages, so I think this applicable to any kind of client, I found all REST Gurus are pointing its best suited for any kind of client because there is no complication of SOAP messages . So please guide/suggest me the main advantage of REST in terms of a client? (Forget about WSDL document). Advanced thanks for your great answers

4

1 回答 1

0

首先,请注意,通常称为 REST 的东西并不是 REST 的真正含义。我不知道它何时以及如何开始,但大多数人似乎认为 REST 只是将 HTTP 方法映射到 CRUD,或使用 JSON,或漂亮的 URI,或类似的东西。

在设备上运行并连接到服务器的专用客户端应用程序与浏览器等通用客户端之间的区别是相同的。

REST 在客户端的主要优点是客户端和服务器实现之间缺乏耦合。使用 SOAP,您将绑定到客户端和服务器之间的合同实现,并且如果有人在未通知的情况下进行更改,则交互预计会中断。

使用 REST,除了入口点和可用的可用媒体类型之外,客户端不应拥有任何服务的先验信息。服务器应提供客户端将导航以查找其感兴趣的资源的链接,以便他们可以更优雅地处理更改。如果内部发生变化,客户甚至不应该注意到。我们只是获得新链接并像往常一样关注它们。如果某些事情发生了剧烈变化,理想情况下,客户端不应轻易崩溃,并且可以继续逐步适应变化。

想想一个网站,比如 Stack Overflow 本身。当您进入家庭时,您已经知道什么是问题、答案和用户,因此您知道入口点和媒体类型。该网站为您提供问题和用户的链接,您只需按照提供的内容关注他们并按照您的意愿行事。你有一个通用客户端,一个浏览器,可以在任何类似的网站上运行,而不是在你的桌面上运行连接到 Stack Overflow 服务器的专用客户端应用程序。这就是区别。REST 是一种遵循 Web 本身架构的架构风格。

于 2013-11-06T11:29:26.657 回答