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起下一次請求 又能傳送非同步請求 是指在單程序單執行緒的 中,發起一次請求後,在等待 返回結果的時間裡,...