本文目標用戶:
1.在產品設計中遇到有關于接口對接的經歷朋贬,但是之前沒有接觸過類似對接。
2.想了解產品眼中的接口到底是什么東西窜骄?
3.對于已經明確了解并有相關對接的產品大佬們锦募,歡迎你們指點。
一.API接口的定義
先來一段官方的解釋:是一些預先定義的函數邻遏,或指軟件系統(tǒng)不同組成部分銜接的約定糠亩。目的是提供應用程序與開發(fā)人員基于某軟件或硬件得以訪問一組例程的能力,而又無需訪問原碼准验,或理解內部工作機制的細節(jié)赎线。
以產品的角度來講,接口就是系統(tǒng)之間信息溝通的橋梁糊饱,通過接口我們能與不同的系統(tǒng)進行數據交換,以一個函數為例:比我y=x+1,當X系統(tǒng)傳入一個參數另锋,Y系統(tǒng)就會給我們按照函數邏輯給我們返回相應的值滞项,我們不需要管Y系統(tǒng)內部具體的細節(jié)。
二.API接口的業(yè)務場景
在我個人的工作經歷中夭坪,我把接口的業(yè)務場景分為2大類:一類是在程序內的接口調用文判。比如在用戶登錄時,輸入賬號密碼調用登錄接口去校驗室梅,這一類我們不考慮戏仓。
另一類是系統(tǒng)之間的接口調用。這一類中又可以細分為2類:一類是同一個平臺內的系統(tǒng)之間的接口調用亡鼠;比如在電商中柜去,訂單中心要想知道某個訂單現在有沒有發(fā)貨,需要傳遞訂單號到倉儲中心拆宛,然后返回訂單的發(fā)貨狀態(tài)嗓奢。還一類是不同平臺系統(tǒng)的接口調用;比如我們需要在頁面上展示地圖浑厚,直接調用高德或者百度的接口展示股耽。
接口為我們的節(jié)省了大量的開發(fā)成本,對于兩個獨立的系統(tǒng)可以通過接口關聯起來钳幅。不需要我們花費大量精力去構建一個完整的系統(tǒng)物蝙,而且對于一些需要的數據是來自外部數據的話,更不可能去搭建同一個系統(tǒng)敢艰。
三.看懂API接口
我們以一個接口文檔的一個例子诬乞,來看看到底包含了哪些元素(作為產品,我們不需要去深究具體的實現細節(jié),只需要知道接口的目的和相應的字段)
1.接口描述
簡單的描述該接口的作用震嫉。
2.接口地址
表示要去哪里去找到該接口森瘪,得到響應。
3.請求方法
表示以哪種方法去請求接口的地址票堵,一般是post或者get扼睬。(想具體了解可以問度娘)
4.請求參數
表示我們向接口調用時,需要傳遞哪些參數悴势,這會根據具體的業(yè)務場景來設計字段以及具體的字段規(guī)則
5.返回結果
表示調用接口后給我們的返回結果
6.異常情況
有些接口文檔還會考慮到異常情況窗宇,不同的異常情況如何處理。
以上是我看接口文檔最關鍵的部分特纤,對于一些更細節(jié)的元素如請求方式军俊、簽名和加密等個人認為沒有必要看那么深,專業(yè)的事給專業(yè)的人做捧存。
后續(xù)我會已具體的項目來說明具體怎么對接粪躬,以及怎么設計。感興趣的朋友可以訂閱我矗蕊。