一、API
什么是API?
百度百科:应用程序接口(英语:Application Programming Interface,简称:API),又称为应用编程接口,就是软件系统不同组成部分衔接的约定。由于近年来软件的规模日益庞大,常常需要把复杂的系统划分成小的组成部分,编程接口的设计十分重要。程序设计的实践中,编程接口的设计首先要使软件系统的职责得到合理划分。良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的维护性和扩展性。
API作用介绍
1.通过API我们可以知道要查询类的所在包。
2.通过API可以查看类的继承(extends)关系和实现(implements)关系和功能描述。
3.通过API我们可以知道要查询的类的类型是接口,抽象类或普通类等以及类的一些权限修饰权限。
4.通过API我们可以知道要查询的类的构造方法,无参构造,有参构造,可以针对参数类型进行说明等。
5.通过API我们可以知道要查询的类的成员方法,例如Math来举例。
二、Web API
什么是Web API?
百度百科:Web API是网络应用程序接口。包含了广泛的功能,网络应用通过API接口,可以实现存储服务、消息服务、计算服务等能力,利用这些能力可以进行开发出强大功能的web应用。
Web API主要功能介绍
1. 支持基于Http verb (GET, POST, PUT, DELETE)的CRUD (create, retrieve, update, delete)操作
通过不同的http动作表达不同的含义,这样就不需要暴露多个API来支持这些基本操作。
2. 请求的回复通过Http Status Code表达不同含义,并且客户端可以通过Accept header来与服务器协商格式,例如你希望服务器返回JSON格式还是XML格式。
3. 请求的回复格式支持 JSON,XML,并且可以扩展添加其他格式。
4. 原生支持OData。
5. 支持Self-host或者IIS host。
6. 支持大多数MVC功能,例如Routing/Controller/Action Result/Filter/Model Builder/IOC Container/Dependency Injection。
什么地方需要用Web API?
1. 需要Web Service但是不需要SOAP
2. 需要在已有的WCF服务基础上建立non-soap-based http服务
3. 只想发布一些简单的Http服务,不想使用相对复杂的WCF配置
4. 发布的服务可能会被带宽受限的设备访问
5. 希望使用开源框架,关键时候可以自己调试或者自定义一下框架