如何撰寫 API 所需具備的知識

3,717次閱讀
尚無留言

共计 4665 个字符,预计需要花费 12 分钟才能阅读完成。

對於剛出社會的新鮮人而言,頭一次聽到這名詞其實很陌生,本篇文章主要紀錄當時出社會主管只給了我張 API 規格表,我只需要依照規格完成,形式不拘,有前輩寫的半成品可以接續,但關鍵我看了整整三天毫無頭緒,因此我決定重新開始 …..

Web Service 概念

為一種軟體服務,透過 Web 通訊協定及資料格式的開放式標準(如 HTTP、XML 及 SOAP 等)為其他應用程式提供服務或進行資料交換。
如何撰寫 API 所需具備的知識

可以理解為兩個大型公司為了互相交換資料,因此各自定義自己的流程規範,好比如大學申請學校,你必須依照學校的要求製作備審資料,學校收到後審核,若是符合要求就將入學證明 (資料) 發給你。其中 SOAP 或 Restful 就像是備審資料要求的形式。

SOAP 概念

全名為 Simple Object Access Protocol 是一種提供給 Web Services 用 XML 製造出來的通訊息協定,好比可以運作在不同平台上的 Protocol,就像是打電話必須通過電話線或無線基地台,目的是讓應用程式之間互相溝通。

RESTful 概念

REST 所代表的是軟體架構風格,全名 REpresentational State Transfer 即表徵狀態轉移
客戶端對伺服端發出資源請求 (Resoure),伺服端回應資源的表徵 (Representation) 或是稱作表現方式
換句話說,資源再 REST 底下是可以定址的概念 (Addressed),可以用檔案、文件、格式來表現,來代表資源目前的狀態 (State)
如何撰寫 API 所需具備的知識
如此 REST 便說明了操作 Web 的基本行為是一種表徵化狀態轉變,我們藉由操作 (動詞) 不同的 URL (名詞) 達成不同的資料 (表徵) 呈現方式。

REST vs. SOAP

REST vs. SOAP 一直是個爭議,不過:

  • RPC 通常強調的是呼叫遠端功能
    REST 強調的是跟遠端交換資料
  • REST 比 SOAP 容易瞭解,也容易實作
  • REST 不是標準,而是 Architecture Style
  • 在一個不太方便撰寫程式的環境下,REST 是一種非常好的 Service 提供方式
  • 非常適合用在 Web 與 Mobile 環境(雲端)
  • 整合 Web Resource 時考慮用 REST
    企業內部比較重視 QoS 時考慮用 SOAP
內容轉自:

我們可以簡單理解,網頁的瀏覽皆是透過使用者發出請求向伺服端獲取資源,但發出的請求一般皆是 GET 或 POST 方式,但在 Restful 的風格規範下,我們可以透過 PUT 和 DELETE 來完成對資料庫的增刪改查,藉由不同的網址來指定取得不同的資源。

下一頁所講述的 RESTfull 是我認為比較深入的部份,新手可以直接跳過,畢竟我自己本身也無法完全理解就是。當作筆記一下囉!未來有機會再回頭看看也許會有不同的體悟!

  • 1 2
正文完
 0
評論(尚無留言)