前言
API聽起來既熟悉又陌生 。我經常聽說這個術語,但具體的含義又不是特殊清楚,對這個相當普遍的術語有一個相當模糊或不正確的理解 。從技術上講,API代表應用程序編程接口 。在某種程度上 , 大多數大公司已經為他們的客戶或內部使用構建了API 。
但是如何用簡單的語言解釋API呢?還有什么比在開發和商業中使用的更廣泛的含義嗎?首先,讓我們回過頭來看看web本身是如何工作的 。
文章插圖
WWW和遠程服務器
當我想到Web時,我想到的是一個由連接的服務器組成的大型網絡 。internet上的每個頁面都存儲在遠程服務器的某個地方 。畢竟,遠程服務器并不是那么神秘——它只是遠程定位計算機的一部分 , 經過優化可以處理請求 。從長遠來看,你可以在你的筆記本電腦上啟動一個服務器,它可以為整個網站提供網絡服務(事實上,工程師們在向公眾發布網站之前會使用一個本地服務器來開發網站) 。
當你在瀏覽器中輸入www.facebook.com時,一個請求會發送到Facebook的遠程服務器 。一旦您的瀏覽器接收到響應,它將解釋代碼并顯示頁面 。對于瀏覽器(也稱為客戶機) , Facebook的服務器是一個API 。這意味著每次訪問Web上的頁面時,都要與某個遠程服務器的API進行交互 。API與遠程服務器不同——它是服務器接收請求和發送響應的部分 。
API作為服務客戶的一種方式
你可能聽說過一些公司將api打包成產品 。例如,地下氣象臺出售對其天氣數據API的訪問權 。
示例場景:您的小型企業的網站有一個用于為客戶注冊預約的表單 。您希望讓您的客戶能夠自動創建一個帶有該約會詳細信息的谷歌日歷事件 。API的使用:這個想法是讓你的網站的服務器直接與谷歌的服務器對話,請求創建一個事件與給定的細節 。然后,您的服務器將接收谷歌的響應 , 對其進行處理,并將相關信息發送回瀏覽器,例如發送給用戶的確認消息 。
另外 , 您的瀏覽器通常可以繞過您的服務器直接向谷歌的服務器發送API請求 。這個谷歌日歷的API與其他遠程服務器的API有何不同?在技術術語中,區別在于請求和響應的格式 。要呈現整個web頁面 , 您的瀏覽器需要HTML格式的響應,其中包含表示代碼,而谷歌Calendar的API調用只返回數據—很可能是JSON格式 。
【如何通俗理解API api是什么意思】如果您的網站服務器正在發出API請求,那么您的網站服務器就是客戶端(類似于您的瀏覽器是客戶端 , 當您使用它來導航到一個網站) 。從用戶的角度來看 , api允許他們在不離開網站的情況下完成操作 。大多數現代網站至少使用一些第三方api 。
許多問題已經有了第三方解決方案,無論是以庫還是服務的形式 。使用現有的解決方案通常更容易、更可靠 。開發團隊將他們的應用程序分解成多個通過api互相通信的服務器并不少見 。為主應用服務器執行輔助功能的服務器通常稱為微服務 。
總而言之,當一個公司給客戶提供了一個API,它只是意味著他們已經建立了一套專用的url返回純數據響應——這意味著反應不會包含這種表象的開銷你期望在一個網站這樣一個圖形用戶界面 。你能用瀏覽器發出這些請求嗎?通常,是的 。由于實際的HTTP傳輸是在文本中進行的,所以您的瀏覽器總是會盡其所能來顯示響應 。例如,您可以直接使用瀏覽器訪問GitHub的API,甚至不需要訪問令牌 。這是您在瀏覽器中訪問GitHub用戶的API路由時得到的JSON響應
(https://api.github.com/users/petrgazarov):
瀏覽器似乎很好地顯示了JSON響應 。這樣的JSON響應可以在代碼中使用 。從本文中提取數據很容易 。然后你可以對數據做任何你想做的事情 。
參考?:https://medium.com/free-code-camp/what-is-an-api-in-english-please-b880a3214a82
- 廈門駕校漲價_從鼓浪嶼回廈門的輪渡如何買票
- 如何盡快解除微信風險提示
- excel如何隱藏行列
- 壓歲錢作文_四年級我的壓歲錢作文四百字
- 如何培養一個聰明的寶寶
- 歷史教學目標_怎樣確定歷史課堂教學目標
- 工業廢水如何處理
- 卸載360_如何卸載360手機助手這一軟件?
- 卷發洗頭后怎么打理_齊肩的卷發洗頭后如何打理呢?
- 卷發棒的用法_如何使用卷發棒,使用卷發棒注意事項
