0

API是甚麼 ? 有甚麼用處? JSON和API有甚麼關係?

甚麼是API?

API的英文全寫是Application Programming Interface,中文翻譯為應用程式介面

如果你只想知道API代表甚麼的話,現在你已經知道了,可以離開本頁了。但如果你想再知道多點關於API有甚麼用和為甚麼需要API的話,那就可以繼續看下去。

API的角色

API的角色是用來作為兩個系統之間,互相交換資料時的一個中間人。我們接著來看看一個生活中的例子來了解下這個中間人是怎樣的。

相信你也曾經到餐廳食過飯,在餐廳裏坐下後,首先你告訴餐廳服務員想食甚麼,你告訴服務員:我想點

  • 薯條
  • 兩份
  • 大份的

大概是這樣,對吧?

其實那個餐廳服務員就是那個中間人,也就是API的角色

API在系統資料交換中起了甚麼作用?

這時候中間人,就是餐廳服務員(API)接到你的請求,就會帶著你的請求訊息走去廚房,廚房弄好食物後,再由餐廳服務員帶回你剛點的食物—>熱騰騰的薯條。

薯條

在這個中餐廳例子中,廚房代表著的一個後端(後台)系統。所謂"廚房重地,外人勿進",一般廚房只相信自家的餐廳服務員,只允許餐廳服務員進出廚房,因為廚房裏可能有很珍貴的食材,餐廳怕有人悄悄地進他們廚房偷食材,也怕客人進了廚房後會妨礙廚師們工作,所以餐廳會對所有客人一視同仁:你們誰都可以下單買食物,我們很樂意給你煮你想食的東西,但請直接和我們餐廳服務員(API)說吧。

所以餐廳服務員(API),是起了中間人和為廚房(系統)把關兩個作用

API常使用的統一語言JSON

聽了以上餐廳,服務員和廚房的例子後相信你大概會對API會有了一個基本的概念。但是還有件事我們是假定了,是甚麼呢?

就是我們假定了客人和服務員是說統一語言。我們假定了客人和服務員都說同一種語言:中文,可以交流的語言。想想如果你到了一家法國餐廳,服務員都說法國語,你卻只會說中文的話,大家也是在語言上溝通不了的,你也是點不了餐了。

服務員

電腦系統也是有同樣問題,因為每個電腦系統的結構,使用的程式語言不一樣,兩個電腦系統要成功交換資料的話,他們需要說統一的語言/格式,而現在API最常使用的統一格式就是JSON格式(想詳細了解下JSON格式的話可以閱讀這篇甚麼是JSON)。

簡單來說,你可以理解JSON格式是法國餐廳服務員和說中文客人之間的一個翻譯。客人可以說中文,服務員可以說法語,只要有JSON作為翻譯,不同結構的系統之間也是能夠順利溝通,進行交換資料的。

API作系統之間交換的中間人有甚麼好處

其實到實際API應用層面上,你可以這樣理解

  1. 客人比作系統A
  2. 服務員比作中間人API
  3. 翻譯員比作JSON格式
  4. 廚房比作系統B

兩個系統,系統A和系統B使用API和JSON格式作資料交換方法的話,主要好處為系統可以在不影響彼此運作,不需要知道/理會對方的系統由甚麼構造,就能夠拿到彼此的數據

API實際應用

說到這裡,關於API理論你大概應該了解了,但是你可能好奇究竟實際生活中API是怎樣使用的。

我在這段關於JSON簡介的影片中我示範了怎樣使用API,拿到實時的Bitcoin(比特幣)格價,然後顯示到網頁中。

現在你在網上見到的API大部份都屬於RESTful API / Rest API,有興趣想知道甚麼叫RESTful API的話可以看下這篇關於有甚麼特質才稱得上RESTful API這篇

免費使用的API資源

另外,如果你已經知道怎樣使用API的話,在這裡我推薦你一個免費的API資源,裡面有各式各樣的免費API給你用和練習。

希望這次關於API的簡單介紹能對你有幫助,我們下次見。

梁浩賢
本文作者 : - 資深網站軟件工程師
想看更多類似內容的可選擇
有用嗎? 分享本篇文章給朋友吧~

再看看其他?