API&Web API
一、API
什麼是API?
百度百科:API(Application Programming Interface,應用程式程式設計介面)是一些預先定義的函式,目的是提供應用程式與開發人員基於某軟體或硬體得以訪問一組例程的能力,而又無需訪問原始碼,或理解內部工作機制的細節。
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. 希望使用開源框架,關鍵時候可以自己除錯或者自定義一下框架