C#SOAP vs RESTful服务

San*_*r M 3 rest soap web-services c#-4.0

如何在c#中创建Restful服务.

我有很多谷歌,我开始知道肥皂重量很重,REST重量很轻

请分享是什么让它们重量轻,重量大.

此外,我需要在SOAP和Restful服务中提供相同服务的示例.

提前致谢.

Ale*_*lex 5

SOAP - 是用于在不同环境之间交换消息的SOA标准.所有消息都具有相同的结构,在其基本视图中代表包含标题和正文的包络.标题通常带有描述性信息,例如调用方法的名称.正文通常用于携带数据本身,这可能是执行方法的参数.SOAP消息示例:

<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
  <soap:Header>
  </soap:Header>
  <soap:Body>
    <m:GetStockPrice xmlns:m="http://www.example.org/stock">
      <m:StockName>IBM</m:StockName>
    </m:GetStockPrice>
  </soap:Body>
</soap:Envelope>
Run Code Online (Sandbox Code Playgroud)

REST - 是另一种交换消息的标准,它基于HTTP Web方法(GET,POST,DELETE,PUT和HEAD).它重量轻,因为它不包含信封组件.通常它只有明确的数据,如下所示:

 <GetStockPrice>
      <StockName>IBM</StockName>
 <GetStockPrice>
Run Code Online (Sandbox Code Playgroud)

SOAP over REST的主要优点,它是协议独立的,可以通过TCP,SMTP,MQ使用.

在此链接上创建REST服务有一个很好的循序渐进的常见问题解答:http://www.codeproject.com/Articles/105273/Create-RESTful-WCF-Service-API-Step-By-Step-Guide