溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

外部接口如何統(tǒng)一api地址

發(fā)布時間:2021-12-10 11:38:52 來源:億速云 閱讀:227 作者:柒染 欄目:大數(shù)據(jù)

今天就跟大家聊聊有關(guān)外部接口如何統(tǒng)一api地址,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

常見的做法有
1.使用if或case語句判斷參數(shù)值; 優(yōu)點:簡單、易理解
缺點:接口多時,if或case分支太多,代碼丑陋
2.動態(tài)代理 這點怎么解析參數(shù),調(diào)用函數(shù)我也不是很清楚。
3.spring是否有實現(xiàn)此類功能?

 

Spring能否實現(xiàn)此類功能?

為什么不看文檔呢?Spring MVC文檔里歸類說明的很清楚了。只需要看Request Mapping這一節(jié):https://docs.spring.io/spring/docs/5.2.5.RELEASE/spring-framework-reference/web.html#mvc-ann-requestmapping
要求API共用一個URL,參數(shù)不同調(diào)用不同的方法,對吧?

 

前端請求服務(wù)器端API,參數(shù)包括這么幾種形式:

  • HTTP Method(GET、POST、PUT、DELETE...)
  • Path Variable(URL路徑中的變量)
  • Request Parameter(問號后面,最常見的傳參方式。這種方式就完全能滿足當(dāng)前的問題。)
  • Header里的參數(shù)
  • Consumable Media Types(請求體是JSON還是XML)
  • 權(quán)限(登錄沒登錄,登錄之后是什么角色,訪問不同的接口)。嚴(yán)格說這不算參數(shù),而是服務(wù)器端進一步判斷得出用戶角色的。

都可以認(rèn)為是參數(shù)。只有Path Variable可能會改變URL路徑,所以下面介紹其他5種形式。

 

1,同一個URL,不同HTTP Method

外部接口如何統(tǒng)一api地址都是/persons這個URL,分別調(diào)用了getPerson和add方法。

 

2,同一個URL,不同Request Parameter

外部接口如何統(tǒng)一api地址都是/pets這個URL,/pets?type=cat和/pets?type=dog分別調(diào)用不同的方法。

 

3,同一個URL,Header中參數(shù)不同

外部接口如何統(tǒng)一api地址都是/pets這個URL,/pets?type=cat和/pets?type=dog分別調(diào)用不同的方法。

 

4,同一個URL,不同Consumable Media Types

外部接口如何統(tǒng)一api地址都是/pets這個URL,請求的數(shù)據(jù)格式不同,分別調(diào)用不同的方法。

 

5,同一個URL,權(quán)限不同

外部接口如何統(tǒng)一api地址都是/persons這個URL,Admin和User分別調(diào)用不同的方法。Admin可以獲取所有數(shù)據(jù),User只能獲取自己有權(quán)限的數(shù)據(jù)。
上面的這些Annotation可以自由組合。有些也是Class級別的,就是可以放在Controller類上做注解。

看完上述內(nèi)容,你們對外部接口如何統(tǒng)一api地址有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

api
AI