版本控制是計算機軟件行業人士使用的術語。但進化是咱們全部人都要經歷的事情,它適用於這個世界上的每一個對象。
在計算機軟件行業,能夠看到每3至4年,每臺計算機軟件都會附帶不一樣的發行版/版本,以知足當前/現代的要求。
api
版本控制是建立和管理軟件產品的多個版本的實踐,消費者能夠根據本身的需求決定使用哪一個版本,API的管理也是如此。
API的建立始終始於使應用程序與內部/外部應用程序開發人員集成的想法。就像任何其餘傳統軟件產品同樣,它老是從小規模開始,而且會隨着時間而發展。讓咱們看下面的簡單用例,以更好地理解它。
例如,咱們可能但願使內部/外部應用程序開發人員可以訪問客戶信息,而且可能開始建立API以提供所需的功能。
做爲第一個版本,您能夠爲API提供僅對客戶信息的讀取權限。後來,隨着對應用程序需求的增長,您的應用程序開發人員可能會請求對客戶信息的「寫入/更新」訪問權限。做爲API建立者/開發者,您能夠決定是否:設計
經過API的版本控制,CustomerInfo API的使用者能夠根據須要決定使用哪一個版本。
當咱們想支持同一個API的多個版本時,做爲API建立者/設計者,咱們須要考慮如下02個主要設計決策:
• 指定API版本信息的格式是什麼
• 消費者將如何指定所選API的API版本
選擇用於指定版本信息的格式時,能夠選擇如下02種常見作法:
• 使用發佈/構建日期-這容許使用發佈/構建日期來惟一標識每一個版本。
示例—版本=「 20200808」 | 版本=「 20190102」
3d
• 使用major.minor數字 -這些數字用於指定同一API的不一樣版本,而且該數字能夠包含1或2或3位數字做爲版本號的一部分。一些API開發人員使用「 v」前綴來表示它是版本號。
示例— version =「 1」 | 版本=「 v1」 | 版本=「 1.1」 | 版本=「 v1.1」 | 版本=「 1.1.1」 | 版本=「 v1.1.1」
版本控制
在決定使用者如何指定版本信息時,能夠從如下03種常見作法中進行選擇:
• HTTP標頭-自定義HTTP標頭將用於傳遞API版本信息
示例— x-customerinfoapi-version:2.1
對象
• 查詢參數-API版本信息將做爲查詢參數傳遞
示例-/customerinfo?version=2.1
blog
• URL -API版本信息將合併到URL自己
示例-/ v2 / customerinfo
開發
做爲API的建立者/開發者,咱們還能夠結合上面的一些方法,並提供用於提供API版本信息的混合方法。例如,咱們可使用URL方法來指定主要版本,而可使用HTTP標頭方法來指定API的次要版本。
如您所見,API版本控制是API設計/開發中的關鍵功能,而且做爲API提供程序,使消費者可以在不一樣的API版本之間進行選擇是關鍵的業務差別。產品