Web API是網路應用程式介面。包含了廣泛的功能,網路應用透過API接口,可實現儲存服務、訊息服務、運算服務等能力,利用這些能力可以進行開發出強大功能的web應用。
今天的web計算平台包含了廣泛的功能,其中的大部分均可以透過API(應用程式介面)存取。從簡單的社群書籤服務del.icio.us,到複雜得多的amazon s3'全虛擬化儲存平台,想想能用這些web api做點什麼,真是驚人。
web平台歸為6個基本設施,並簡單概述些相關產品。其間的線索是這些產品都提供了API,這意味著者本身可以被其他服務整合。
儲存服務:
儲存服務專注於抽象化和虛擬化儲存。這個領域的領頭羊是amazon s3,在我的article in web 2.0 journal中對其曾有較深入的探討。對開發者而言,S3提供了極其精簡抽象的如雜湊表之類的API,讓你可以輕鬆存取資訊。另一個有趣的服務是openemy,它提供了類似檔案系統介面的api,但增加了給檔案標籤的能力。今年早些時候,TechCrunch剖析了其他一些線上儲存服務。但至今我們還沒看到傳說中顛覆性的儲存服務GDrive(來自google)和LiveDrive(來自微軟),他們很大可能都會提供api。
訊息服務:
訊息服務在概念上類似於傳統意義上的中間件。由於技術和商業上的複雜性,它們還沒有被大規模開發。短期內可見的基於web的通訊服務是Amazon Simple Queue Service。這個服務使得任意應用間安全性和可擴展的基於佇列的通訊更為便利。
計算服務:
目前還沒有一個一般的可以透過api來存取的web計算服務黑盒,但有不少技術指向這個方向。一個是alexavertical search platform,在下面的搜尋服務小節會提及更多,第二個是網格計算,例如 sungrid,datasynapse's gridserver或platform's symphony。在API裡封裝任意的運算任務是個相當具挑戰性的任務,也許還要很多年這種服務才會廣泛流行。
資訊服務:資訊服務提供大量特定的資訊。包括像Google Maps API的地理數據,像Amazon E-Commerce,Amazon historcal Pricing Services的產品數據和最新發布的Yahoo! answer's API登。這些服務的共同點是它們都提供簡單的API來存取大量數據,可能催生孤立資訊間的不可預測的交叉應用。
搜尋服務:
因為搜尋在web領域的基礎和統治地位,搜尋服務構成了新的web基礎架構的關鍵部分。 Google searchapi是較早的如今已成典型的搜尋抽象機制。另一個例子是alexa search platform,它的設計帶動了一系列挑戰google地位的垂直搜尋引擎。相當有趣的是從技術上看,alexa search platform更多表現為一個計算服務,不過局限在搜尋領域而已。這意味著者其他服務的可能性,例如排序服務或資料轉換服務。
web2.0服務:
最後一類寬泛的叫它們web2.0服務,名字不一定切題,但它包含諸如del.icio.us, flickr,basecamp。 John Musser在Programmableweb中編譯了一些非常有影響力的api。這些特定的服務將來會成為上述其他服務的使用者,但當前它們的價值更多體現在它們提供了清晰的,特定的,簡單的api來查看和改變大家擁有的信息。儘管它們看起來更像分子而非原子,但在當今的web領域裡,它們是如此基本的服務,所以我把它們視為構成成分還是很有意義的。
以上是Web API是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!