在.net平台下,有大量的技术让你创建一个服务,像Web Service,WCF,Web API,Remoting,我们来对比一下他们的区别与联系

Remoting Web Service WCF WCF Rest Web API
可以灵活的定义其所基于的协议 基于SOAP协议 基于SOAP协议 想使用WCF Rest service,你必须在WCF中使用webHttpBindings 一个简单的构建HTTP服务框架
既支持TCP信道又支持HTTP信道,传输速度快 只支持HTTP协议 是Web Service(ASMX)的进化版,可以支持各种各样的协议,像TCP,HTTP,HTTPS,Named Pipes, MSMQ. 分别用[WebGet]和[WebInvoke]属性,实现了HTTP的GET和POST动词,要想使用其他的HTTP动词,你需要在IIS中做一些配置,使.svc文件可以接受这些动词的请求;使用WebGet通过参数传输数据,也需要配置。而且必须指定UriTemplate 不像WCF REST Service.它可以使用HTTP的全部特点(比如URIs、request/response头,缓存,版本控制,多种内容格式)
不是开源的 不是开源的 不是开源的 不是开源的 在.net平台上Web API 是一个开源的、理想的、构建REST-ful 服务的技术
可传输XML的SOAP包又可传输二进制流,效率高 XML XML 支持XML、JSON以及ATOM这些数据格式 Response可以被Web API的MediaTypeFormatter转换成Json、XML 或者任何你想转换的格式。
主要用于C/S结构项目 用在B/S系统中
需要客户和服务器都是.NET 可以做到跨平台通信,但必须采用SOAP协议 可以做到跨平台通信,但必须采用SOAP协议 可以跨平台通信 可以跨平台通信
需要通过一个WinForm或是Windows服务进行启动,不一定要依赖IIS服务器 只能部署在IIS上 可以部署应用程序中或者IIS上或者Windows服务中 可以部署在应用程序和IIS上

本文参考文档:

Remoting、WCF、WebAPI、WCFREST、WebService之间的区别与联系的更多相关文章

  1. 关于wcf,webservice,webapi或者其他服务或者接口有什么区别 WCF、WebAPI、WebService之间的区别 【转载】HTTP和SOAP完全就是两个不同的协议 WebService学习总结(一)——WebService的相关概念

    wcf,webservice采用的是rpc协议,这个协议很复杂,所以每次要传递.要校验的内容也很复杂,别看我们用的很简单,但实际是frame帮我们做掉了rpc生成.解析的事情webapi遵循是rest ...

  2. WCF、WebAPI、WebService之间的区别

    Web Service 1.它是基于SOAP协议的,数据格式是XML 2.只支持HTTP协议 3.它不是开源的,但可以被任意一个了解XML的人使用 4.它只能部署在IIS上 WCF 1.这个也是基于S ...

  3. 转:WCF、WebAPI、WCFREST、WebService之间的区别

    WCF.WebAPI.WCFREST.WebService之间的区别   注明:转载 在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了Web API ...

  4. servlet,RMI,webservice之间的区别

    最近项目中有提供或者调用别的接口,在纠结中到底是用servlet还是用webservice,所以上网查看了下他们以及RMI之间的区别,方便加深了解. 首先比较下servlet和webservice下  ...

  5. WCF、WebAPI、WCFREST、WebService之间的区别

    注明:转载 在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了Web API.在.net平台下,你有很多的选择来构建一个HTTP Services.我 ...

  6. 【转】WCF、WebAPI、WCFREST、WebService之间的区别

    在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了Web API.在.net平台下,你有很多的选择来构建一个HTTP Services.我分享一下我对 ...

  7. WCF、WebAPI、WCFREST、WebService之间的区别和选择

    转载翻译,原文:http://www.dotnet-tricks.com/Tutorial/webapi/JI2X050413-Difference-between-WCF-and-Web-API-a ...

  8. WCF、WebAPI、WCFREST、WebService之间的区别【转】

    转自:http://www.cnblogs.com/markli/p/4460564.html 在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了We ...

  9. WCF、WebAPI、WCFREST、WebService之间的区别【转载】

    在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了Web API.在.net平台下,你有很多的选择来构建一个HTTP Services.我分享一下我对 ...

随机推荐

  1. EL表达式(Exprission language)

    EL介绍 Expressive Language, JSP2.0引入,简化jsp开发中对对象的引用,(可以直接读取对象的属性,不需要像之前java脚本那样去做,比较繁琐),使得访问存储在JavaBea ...

  2. Kafka动态配置实现原理解析

    问题导读 Apache Kafka在全球各个领域各大公司获得广泛使用,得益于它强大的功能和不断完善的生态.其中Kafka动态配置是一个比较高频好用的功能,下面我们就来一探究竟. 动态配置是如何设计的? ...

  3. 如何利用开源解码项目开发js视频解码的web应用 系列

    介绍web上开发视频业务相关程序的技术演变历程 https://www.cnblogs.com/maoliangwu/articles/12046495.html 介绍ffmpeg asm.js we ...

  4. python学习方法

    python学习体系 python相关书籍若干本 了解python基础数据类型 熟悉各种类型的操作方法 理解函数与类的概念 练习练习再练习 前期以被动学习为主,把每个知识点都认真的学过去,后期慢慢再把 ...

  5. 洛谷P1649 【[USACO07OCT]障碍路线Obstacle Course】

    题目描述 Consider an N x N (1 <= N <= 100) square field composed of 1 by 1 tiles. Some of these ti ...

  6. Codeforces_822

    A.小的那个数的阶乘. #include<bits/stdc++.h> using namespace std; int a,b; int main() { ios::sync_with_ ...

  7. Codeforces_731_B

    http://codeforces.com/problemset/problem/731/B 模拟模拟. #include<iostream> #include<cstring> ...

  8. Go语言实现:【剑指offer】旋转数组的最小数字

    该题目来源于牛客网<剑指offer>专题. 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转. 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素. 例如数组{3, ...

  9. 手写-- K-means++

    1. K-means++原理 K均值聚类属于启发式方法,不能保证收敛到全局最优,初始中心的选择会直接影响聚类结果.K-means是随机选择样本点作为聚类中心,容易造成算法局部收敛或者需要较多迭代次数, ...

  10. python学习Day27--time模块、sys模块、os模块和序列化模块

    [知识点] 1.时间模块: (1)时间戳时间,格林威治时间,float数据类型 英国伦敦的时间:1970.1.1     0:0:0 北京时间:1970.1.1     8:0:0 (2)结构化时间, ...