WCF、Rest和SOAP之间的关系是什么?

WCF、Rest和SOAP之间的关系是什么?,wcf,web-services,rest,soap,Wcf,Web Services,Rest,Soap,WCF和REST&SOAP之间的关系是什么?WCF是基于这些技术之一(REST或SOAP)还是一种独立的技术? WCF编程模型提供了各种功能,如SOAP 服务、web HTTP服务、数据服务、富internet应用程序 (RIA)服务和工作流服务。SOAP服务支持 使用Java和其他语言构建的系统之间的互操作性 平台,以及使用受支持的消息传递标准的平台 微软®。SOAP服务还支持HTTP等传输, TCP、命名管道和MSMQ。Web HTTP服务和数据服务 支撑休息。Web HTTP服务使您能够控

WCF和REST&SOAP之间的关系是什么?WCF是基于这些技术之一(REST或SOAP)还是一种独立的技术?

WCF编程模型提供了各种功能,如SOAP 服务、web HTTP服务、数据服务、富internet应用程序 (RIA)服务和工作流服务。SOAP服务支持 使用Java和其他语言构建的系统之间的互操作性 平台,以及使用受支持的消息传递标准的平台 微软®。SOAP服务还支持HTTP等传输, TCP、命名管道和MSMQ。Web HTTP服务和数据服务 支撑休息。Web HTTP服务使您能够控制服务 位置、请求和响应、格式和协议。数据服务 使您能够将数据模型和数据驱动逻辑公开为服务。 WCF还包括两个编程模型:服务模型和 渠道模型。服务模型提供了一个用于定义 数据契约、服务契约和服务行为。海峡 模型支持指定格式、传输和协议

SOAP和REST服务都可以为web服务提供功能 应用程序,两者都可用于在 web的分布式环境。每一个都有自己的优势,并且 限制


WCF不是自动的REST或SOAP,但您可以这样做。这里您需要的是一个教程:

周转基金

休息

这里还有一些其他有趣的东西:

WCF-REST/SOAP

WCF和REST


或者你可以自己进行google/bing/metacrawler/altavista搜索……

WCF是构建分布式系统的消息传递框架。分布式系统通常只是web服务的另一个词

这意味着您可以用C#(或任何.NET语言)编写方法,然后对代码应用一系列配置,使其他人可以访问您的代码,并将代码转换为web服务

那些“一堆配置”就是WCF。如果围绕C#代码设置WCF配置以将其作为RESTful服务公开,则WCF允许您使用REST将方法公开给其他计算机或应用程序。或者,您可以轻松地采用相同的C#方法,并通过SOAP协议使它们可用

如果有一个名为“GetData()”的方法,则可以设置WCF配置,使该方法在IIS中托管的服务中可用。当有人调用该服务时,他们可以向发送HTTP GET请求,GetData方法将接收消息并发送回响应。当您通过HTTP发出GET请求时,您正在使用其余的。REST作为传输协议与HTTP紧密相连。REST也没有标准的消息格式。无论您想在HTTP消息中发送什么,以及以何种方式发送都是可以的。您可以发送XML、JSON或纯文本。您还可以使用POST、GET、PUT或任何HTTP动词

使用SOAP,您的消息可以使用任何传输协议发送到服务——您不必绑定到HTTP。SOAP消息被设计为与传输无关。它们是用XML编码的,XML在信封节点中始终有一个头节点和一个体节点。围绕SOAP有很多web标准——例如,用于将安全性、会话和其他特性放入消息头的标准。另外,使用SOAP,您可以得到一个WSDL,我在这里不会详细解释,但它使客户端更容易进行编程。大多数编程语言都有一种方法,即获取WSDL并将其转换为强类型方法和对象,以便您的服务易于调用


REST在internet上非常流行,并且与internet一样可扩展(即非常可扩展)。SOAP在企业对企业应用程序中非常流行。

尽管如此,这个问题已经得到了好几个很好的答案,我只花了2美分,试图让新手使用WCFvsSOAPvsREST-全方位服务,让他们更容易理解。

我们很困惑,WCF是否同时支持RESTSOAP?通常,我们只看到和的一般定义。所以,我们需要微软的一些东西让我们感受到真相:)下面是微软的截图:

因此,,WCF同时支持这两种功能

在OP的上下文中:

  • SOAP服务:
    在WCF编程模型中,支持使用Java或其他语言构建的系统之间的互操作性 平台,以及使用受支持的消息传递标准的平台 微软®。它们还支持HTTP等传输, TCP、命名管道和MSMQ
  • Web HTTP服务
    在WCF编程模型中支持REST。[来源:]

那么,WCF是否真的是一种独立于web服务技术的技术,web服务技术包括REST和SOAP作为变体?根据我的经验,WCF是web服务的同义词。在工作中,我们可以将其称为WCF Web服务。WCF的优点是它同时支持REST和SOAP。这取决于您如何编写服务代码。WCF只是关于ABC(地址、绑定、合同),在我提供的链接中解释得更好。只是为了检查WCF教程是否使用SOAP或REST?@JoshLeeDucks老实说,我不确定。如果我不得不猜测的话,我会说它可能在使用SOAP,但我必须运行实际的代码并查看以确定。这里要说明的一点是,WCF与SOAP或REST无关,它可以使用任何一种。我将在链接中添加一篇我发现的有趣文章。这是一个重要的区别,其他帖子(尽管其他帖子也同样重要)没有提到这一点:“SOAP服务支持互操作性…”(不得不在