ASP.NET Core与RESTful API 开发实战
上QQ阅读APP看书,第一时间看更新

1.1 API与REST

1.1.1 什么是API

API全称Application Programming Interface,即应用程序编程接口,我们在开发应用程序时经常用到。API作为接口,用来“连接”两个不同的系统,并使其中一方为另一方提供服务,比如在操作系统上运行的应用程序能够访问操作系统所提供的API,并通过这些API来调用操作系统的各种功能。因此,API是一个系统向外暴露或公开的一套接口,通过这些接口,外部应用程序能够访问该系统。

在Web应用程序中,Web API具有同样的特性,它作为一个Web应用程序,向外提供了一些接口,这些接口的功能通常是对数据进行操作(如获取或修改数据等),它们能够被外部应用程序,比如桌面应用程序、手机应用甚至其他Web应用程序(如ASP.NET Core MVC视图应用、单页Web应用)等访问并调用。

Web API能够实现不同应用程序之间的访问,它与平台或编程语言无关,可以使用不同的技术来构建Web API,如Java、.NET等;调用方也不受Web API使用的平台或技术限制,比如一个使用Java语言开发的Android手机应用可以调用一个使用C#语言开发的ASP.NET Core Web API应用程序。同时,API作为接口,仅向外部应用程序提供了抽象,而不是在其内部实现。这正如高级编程语言中的接口(Interface)一样,调用方无须关心接口如何实现,仅需要调用它所提供的方法即可。此外,Web API由于其自身的特点,不能直接被用户使用,相反地,它通常由开发人员来使用。通过调用Web API,开发人员能够设计出丰富多样的应用。因此,设计良好、有丰富文档的Web API更易于被开发者接受并使用。