使用jwt生成token驗證登入狀態

2021-10-09 00:27:29 字數 1678 閱讀 7778

在pom檔案引入jwt相關依賴**.

com.nimbusds<

/groupid>

nimbus-jose-jwt<

/artifactid>

6.0<

/version>

<

/dependency>

org.assertj<

/groupid>

assertj-core<

/artifactid>

<

/dependency>

生成token字串

/**

* 秘鑰

*/private static final byte secret = "6mnsobbrchgio0fs6mnsobbrchgio0fs".getbytes();

//設定過期時間 5s

private static final long expire_time = 1000 * 5;

public static string gettoken(long userid) catch (keylengthexception e) catch (joseexception e)

return null;

}

校驗token是否有效

public string volidtoken(string token) 

//校驗超時

date expirationtime = jwt.getjwtclaimsset().getexpirationtime();

if (new date().after(expirationtime))

} catch (parseexception e) catch (joseexception e)

return null;

}

獲取放入token字串中的資料

public string get(string token)
***驗證

public class authenticationinterceptor implements handlerinterceptor 

string str = tokenutil.volidtoken(token); //驗證token是否過期 是否有效

if(str.equals("1"))|

string userid = tokenutil.get(token);

user user = userservice.getuserbyid(userid);

if (null == userentity)

return true;

}}

配置請求是否通過***

@configuration

public class interceptorconfig implements webmvcconfigurer

@override

public void addinterceptors(interceptorregistry registry)

}

使用jwt生成token驗證登入狀態的全部教程完成

jwt 生成token方法

author marte date 2019 04 23 10 37 03 last modified by marte last modified time 2019 04 23 10 58 23 單例 一次請求中所有出現使用jwt的地方都是乙個使用者 class jwtelse 驗證token是...

jwt 私鑰 使用JWT實現Token認證

json web token的結構是什麼樣的 json web token由三部分組成,它們之間用圓點 連線。這三部分分別是 header payload signature 因此,乙個典型的jwt看起來是這個樣子的 xx.yyyyy.zzzzz 接下來,具體看一下每一部分 header heade...

JWT 生成及驗證

1 composer安裝 composer require lcobucci jwt 3.3 2 例項化類 namespace tools jwt use 到你自己安裝的目錄,每個人的可能不同 use lcobucci jwt builder use lcobucci jwt parser use ...