欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Web Service vs WCF vs WCF REST vs Web API

程序员文章站 2022-04-06 10:50:47
Web Service 1.基于SOAP协议,以XML格式返回数据。 2.只支持HTTP协议。 3.不开源,能用于所有能解析XML的客户端。 4.只能寄宿在IIS上面。 WCF 1. 也是基于SOAP协议,以XML格式返回数据。 2.是Web Service(ASMX)的升级,支持多种协议,如:TC ......

Web Service

1.基于SOAP协议,以XML格式返回数据。

2.只支持HTTP协议。

3.不开源,能用于所有能解析XML的客户端。

4.只能寄宿在IIS上面。

 

WCF

1. 也是基于SOAP协议,以XML格式返回数据。

2.是Web Service(ASMX)的升级,支持多种协议,如:TCP, HTTP, HTTPS, Named Pipes, MSMQ。

3.WCF配置过于繁杂。

4.不开源,能用于所有能解析XML的客户端。

5.能够寄宿在应用程序,IIS和Windows服务中。

 

WCF REST

1.需要启用webHttpBindings。

2.支持HTTP GET和POST,通过添加[WebGet]和[WebInvoke]属性实现。

3.如果需要使用其他HTTP请求方式(e.g. PUT, DELETE),需要在IIS中进行额外配置。

4.通过URL参数传输数据,需要进行WebGet配置,必须要指定其中的UriTemplate。

5.支持XML, JSON等数据格式。

 

WEB API

1.微软提供的一种更简单方便地创建HTTP服务的新框架。

2.开源项目,是在.NET平台上建立REST-ful服务的理想平台。

3.和WCF Rest比较,Web API支持全部的HTTP特性(like URIs, request/response headers, caching, versioning, various content formats.)。

4.也支持MVC特性,如routing, controllers, action results, filter, model binders, IOC container or dependency injection, unit testing。

5.可以寄宿在应用程序或者IIS上。

6.是一个轻量级架构,可以更好的用于像智能手机这样具有有限带宽的设备。

7.返回数据时,通过MediaTypeFormatter, 可以返回JSON, XML或者其他自定义数据。