什麼是 API? | 快速定義

什麼是API?

簡介

只要在桌面或設備上點擊幾下,就可以隨時買賣或發布任何東西。 它究竟是如何發生的? 如何 信息 從這裡到那裡? 未被認可的英雄是API。

什麼是API?

API代表一個 應用程序接口. API 表示軟件組件、它的操作、輸入、輸出和底層類型。 但是如何用通俗易懂的英語解釋 API? API 充當信使,從應用程序傳輸您的請求並將響應返回給您。

示例1: 當您在線搜索航班時。 您與航空公司的網站互動。 該網站詳細說明了該特定日期和時間的座位和航班費用。 您可以選擇用餐或座位、行李或寵物要求。

但是,如果您沒有使用航空公司的直接網站,或者使用的是結合了許多航空公司數據的在線旅行社。 為獲取信息,應用程序與航空公司的 API 進行交互。 API 是將數據從旅行社網站獲取到航空公司係統的接口。

 

它還需要航空公司的響應並立即返回。 這促進了旅行服務和航空公司係統之間的交互——預訂航班。 API 需要一個用於例程、數據結構、對像類和變量的庫。 例如,SOAP 和 REST 服務。

 

示例2: Best Buy 通過其網站提供“每日特價”特價。 同樣的數據在其移動應用程序中。 該應用程序不擔心內部定價系統——它可以調用每日交易 API 並詢問,特價是多少? Best Buy 以應用程序向最終用戶顯示的標準格式響應所請求的信息。

 

Example3:  社交媒體的 API 至關重要。 用戶可以訪問內容並將他們跟踪的帳戶和密碼數量保持在較低水平,這樣他們就可以讓事情變得簡單。

  • Twitter API:與大多數 Twitter 功能交互
  • Facebook API:用於支付、用戶數據和登錄 
  • Instagram API:標記用戶、查看熱門照片

REST 和 SOAP API 怎麼樣?

SOAPREST的 使用 API 消費服務,稱為 Web API。 Web 服務不依賴於任何先驗知識信息。 SOAP 是一種與平台無關的輕量級 Web 服務協議。 SOAP 是一種基於 XML 的消息傳遞協議。 與 SOAP Web 服務不同,Restful 服務使用 REST 架構,專為點對點通信而構建。

網絡服務

簡單對象訪問協議 (SOAP) 使用 HTTP 協議來允許應用程序進行通信。 SOAP 是一種定向的、節點間的無狀態通信。 有 3 種類型的 SOAP 節點:

  1. SOAP Sender——創建和傳輸消息。

  2. SOAP Receiver – 獲取並處理消息。

  3. SOAP 中介 - 接收和處理標頭塊。

RESTful Web 服務

Representational State Transfer (REST) 涉及客戶端和服務器之間的關係以及狀態如何處理。 Rest 架構,一個 REST Server 提供對客戶端的資源訪問。 Rest 處理讀取和修改或寫入資源。 統一標識符 (URI) 標識包含文檔的資源。 這將捕獲資源狀態。

REST 比 SOAP 架構更輕。 它解析 JSON,這是一種人類可讀的語言,可以實現數據共享和更易於使用數據,而不是 SOAP 架構使用的 XML。

設計Restful Web Service有幾個原則,分別是:

  • 可尋址性——每個資源都應該至少有一個 URL。
  • 無狀態——Restful 服務是一種無狀態服務。 請求獨立於服務過去的任何請求。 HTTP 是一種無狀態協議。
  • 可緩存 – 標記為可緩存存儲在系統中並在將來重用的數據。 作為對相同請求的響應而不是產生相同的結果。 緩存約束使響應數據標記為可緩存或不可緩存。
  • 統一接口——允許使用通用和標準化的接口進行訪問。 使用已定義的 HTTP 方法集合。 遵守這些概念可確保 REST 實現是輕量級的。

休息的優勢

  • 使用更簡單的消息格式
  • 提供更強的長期效率
  • 支持無狀態通信
  • 使用 HTTP 標準和語法
  • 數據可作為資源使用

休息的缺點

  • 不符合 Web 服務標準,例如安全交易等。
  • REST 請求不可擴展

REST 與 SOAP 比較

SOAP 和 REST Web 服務之間的區別。

 

網絡服務

休息網絡服務

與 REST 相比,需要大量輸入負載。

REST 是輕量級的,因為它使用 URI 作為數據形式。

SOAP 服務的變化通常會導致客戶端代碼發生重大變化。

客戶端代碼不受 REST Web 配置中服務更改的影響。

返回類型始終是 XML 類型。

提供關於返回數據形式的多功能性。

基於 XML 的消息協議

架構協議

在客戶端需要一個 SOAP 庫。

通常在 HTTP 上使用不需要庫支持。

支持 WS-Security 和 SSL。

支持 SSL 和 HTTPS。

SOAP 定義了自己的安全性。

RESTful Web 服務從底層傳輸繼承安全措施。

API 發布政策的類型

API 的發布政策是:

 

私人發布政策: 

API 僅供公司內部使用。


合作夥伴發布政策:

API 僅適用於特定的業務合作夥伴。 公司可以控制 API 的質量,因為可以控制誰可以訪問它。

 

公開發布政策:

API 供公眾使用。 發布政策的可用性向公眾開放。 示例:Microsoft Windows API 和 Apple 的 Cocoa。

結論

API 無處不在,無​​論您是預訂航班還是使用社交媒體應用程序。 SOAP API 基於 XML 通信,它與 REST API 的不同之處在於它不需要任何特殊配置。

設計 Rest Web 服務應遵循某些概念,包括可尋址性、無狀態性、可緩存性和標準接口。 API發布規則可以分為三類:私有API、合作夥伴API和公共API。

感謝您閱讀本文。 查看我們關於指南的文章 API安全 2022.