Asp.Net Web API和WCF服务有什么区别?

8
自从几个月前,这个Asp.Net Web API似乎成为了微软备受关注的产品。它是WS*服务的替代品吗?它与WCF服务有何不同?在Web应用程序开发中,最适合在哪里使用它?

可能是WCF vs ASP.NET Web API的重复问题。 - nawfal
2个回答

9
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》、《RESTful Web Services Cookbook》和《用HTML5和Node构建超媒体API》等书籍。

-2

ASP.net Web API与WCF API的区别

Web服务是WCF的一部分。与Web服务相比较,WCF提供了更加灵活和便携的开发服务的方式。我们仍然可以在Web服务上获得更多优势,下面的表格提供了它们之间的详细差异。


2
你的链接和答案展示了Web服务和WCF服务之间的差异。但问题是关于Web API和WCF服务的区别。 - Dr. Rajesh Rolen
@SmartestVEGA 你可以删除这条消息并获得一些声望。 - nawfal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接