1
這是我的情況:
有一個API服務,它會在一個賽季發佈一個新版本。
我爲每個版本創建一個Web應用程序。因此,有下默認網站,看起來像Web應用程序的列表:如何構建具有單個url但多個版本的應用程序的API服務?
- API_2016S1
- API_2016S2
- API_2016S3
- ...
對於客戶來說,API的網址應爲同樣的,甚至它的版本已經改變。 版本信息不會成爲API網址的一部分。
客戶端和API版本之間的關係存儲在數據庫中。
所以客戶端的請求的流程可能是這樣的:
- 客戶
- 發送請求(在頭端ID和會話的Cookie)
- 一個門戶網站的應用程序,這樣做:
- 身份驗證
- 確定哪個API應用程序應該是
- 發送客戶端的特定的API的應用程序請求
- 特定API應用程序做:
- 接收請求(不管認證)
- 過程請求
- 響應於門戶應用
- 的門戶應用程序對客戶端的響應
因此,對於即將推出的新版API服務,我只需要爲它們創建Web應用程序並在數據庫中設置關係。
現在我試圖自己構建門戶應用程序。
我的問題是:有沒有類似的結構或機制可以處理這種情況?或者對我有任何想法。謝謝!
感謝您的建議,我現在正在尋找API網關。 – Ray