自上个月以来,这个Asp.Net Web API似乎是微软的一个突出产品.它是WS *服务的替代品.它与WCF服务有什么不同?我们在哪里可以看到它最适合Web应用程序开发?
解决方法
ASP.NET Web API是用于构建通过HTTP公开的Web服务的框架.它非常适合(但不限于)构建RESTful Web服务.
此类Web服务是构建SOAP RPC / WS * Web服务的替代方法,因为它们更简单,更轻,并且客户端和服务器之间的耦合更少.
传统的“WCF服务”支持SOAP RPC而不是REST,这些服务往往很复杂,并且在客户端和服务器之间具有紧密耦合.广泛的互操作性可能变得难以实现.但是,传统的WCF服务可以通过各种协议进行通信 – TCP对于内部服务(同一DMZ中的服务)特别有用.
(虽然WCF主要与SOAP RPC样式的服务相关联,但WCF中至少有三次尝试支持构建RESTful Web服务.这些尝试都已被ASP.NET Web API取代.)
ASP.NET Web API最适合通过HTTP生成面向公共的RESTful Web服务(即超媒体API).为此,在开始使用ASP.NET Web API之前,充分了解REST架构风格非常重要.请参阅“REST in Practice”,“RESTful Web Services Cookbook”和“使用HTML5和Node构建超媒体API”等书.