基於springBoot實現請求攔截功能

2021-10-23 20:46:25 字數 1504 閱讀 7784

1、定義乙個過濾器的類authenticationfilter 繼承handlerinterceptoradapter 類

2、右鍵generate->重寫父類的方法prehandle(),如果返回false則不能訪問,返回true則可以訪問

3、定義令牌的請求頭

//請求帶上令牌,authorization:bearer token

final string header = request.

getheader

("authorization"

);

4、判斷請求頭是否為空,判斷請求體是否為空

header.startswith這個判斷請求體是不是以***開頭

if

(stringutils.

isnotblank

(header)

&& header.

startswith

("bearer "

))

5、獲取請求體的中包含的token值

header.substring(7);從string型別的字串第七個以後開始取值,包含空格,bearer六個字母,加空格為七個

//擷取token,從第七個開始擷取

string token = header.

substring(7

);

6、將token值轉化為資訊,看看token是否失效

claims claims = jwtutils.

parsejwt

(token);if

(claims != null)

}

7、失效返回 islogin,islogin 是布林型別,上面設定預設為false

8、 如果失效則向前端返回自定義資訊

if

(!islogin)

9、將過濾器註冊到spring中

@component

public class authenticationfilter extends handlerinterceptoradapter }}

if(!islogin)

return islogin;

}}

1、新增web 過濾器,管理過濾的類,以及過濾的請求路徑

2、繼承webmvcconfigurationsupport 類

和上面一樣generate,複寫父類的方法 addinterceptors

3、通過registry.addinterceptor攔截類,addpathpatterns攔截路徑,excludepathpatterns新增允許路徑

@component

public class webconfig extends webmvcconfigurationsupport

}

springboot基於token實現登入認證

最近因為專案需求,需採用token的方式實現登入認證,而不再使用session的方式登入,因而採用springboot整合jwt生成token實現登入認證。1.首先新增jwt所需jar包 io.jsonwebtoken groupid jjwt artifactid 0.7.0 version de...

SpringBoot實現基於token的登入驗證

springboot實現基於token的登入驗證 基於token的登入驗證實現原理 客戶端通過使用者名稱和密碼呼叫登入介面,當驗證資料庫中存在該使用者後,將使用者的資訊按照token的生成規則,生成乙個字串token,返回給客戶端,客戶端在呼叫其他介面的時候,需要在請求頭上帶上token,來驗證登入...

Python基於httpx模組實現傳送請求

一 httpx模組是什麼?乙個用於http請求的模組,類似於requests aiohttp 既能傳送同步請求 是指在單程序單執行緒的 中,發起一次請求後,在收到返回結果之前,不能發ofwnrif起下一次請求 又能傳送非同步請求 是指在單程序單執行緒的 中,發起一次請求後,在等待 返回結果的時間裡,...