c# 高级编程 32章821页 【Web API】【历史】【WCF】【REST】【SOAP】

114 阅读1分钟

WCF追溯历史

  • .NET 3.0发布了WCF(Windows Communication Foundation), WCF是一种通信技术
  • WCF代替了.NET栈中的其他几个技术,包括.NET Remoting, ASP.NET Web Service
  • WCF的目标是,以一种非常灵活的通信技术来满足所有需求
  • WCF最初是基于SOAP的

Web API追溯历史

  • 现在的许多情形都不需要强大的SOAP,例如,对于返回JSON的HTTP请求这样的简单情形,WCF过于复杂
  • 于是,2012年引入ASP.NET Web API
  • 随着ASP.NET Core的发布,发布了使用ASP.NET技术Web API的第三个重要版本
  • ASP.NET MVC和ASP.NET Web API以前有不同的类型和配置(以前的版本是ASP.NET MVC 5和ASP.NET Web API 2)
  • ASP.NET Core中的Web API和ASP.NET Core MVC中的Web API是相同的
  • ASP.NET Web API提供了一种基于REST(Representational State Transfer)的简单通信技术

比较基于REST体系结构样式服务和使用SOAP协议的服务

相同:

  • 都是利用了客户端-服务器技术

是否有状态,不同:

  • SOAP服务可以是有状态的,也可以是无状态的
  • REST服务总是无状态的

格式,不同:

  • SOAP定义了自己的消息格式,格式有标题和正文,可以选择服务的方法
  • REST,使用HTTP动词GET,POST,PUT, DELETE
  • GET用于检索, POST用于添加,PUT用于更新,DELETE用于删除