[英]how can i paretoken when i use jwt token?
我在 url 中有這樣的值
console.log("url:",url)
url: demo://app?accessToken=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJwcm92aWRlciI6Imtha2FvIiwiaWF0IjoxNjE4MzIwOTg1fQ.Ver4V9lOBamkgU-DQC91LnVZLuvkLOGgytXPnkOWsFg
我想解析url中的token,放到maintoken中。
我怎樣才能做到這一點?
這是我的代碼
useEffect(()=>{
Linking.addEventListener("url", ({url}) => {
console.log("url:",url)
const maintoken = parseToken(url);
console.log("token:",token);
})
return () => Linking.removeEventListener("url");
},[])
如果url
總是以demo://app?accessToken=
開頭,你可以做一個 substring。
const mainToken = url.subString(22);
我不太確定您要實施什么。 但是,如果您嘗試從 JWT 中提取值並將它們添加到前端的另一個簽名 JWT 中,那么這是不可能的。
篡改或嘗試更改散列 JWT 令牌中的值使其成為無效令牌。
使用 JWT 令牌的全部目的是確保沒有人可以篡改令牌和/或其中包含的數據。 一旦 JWT 由您使用的 JWT 模塊簽名,其簽名的目的是確保數據不能更改。
因為如果您可以更改 JWT 和 JWT 中的值仍然作為有效令牌傳遞,那么這將危及您的整個身份驗證過程。
此外,不要將 append JWT 轉換為 URL。 這是不好的做法。 如果您有記錄所有 API 調用的日志系統,那么您的令牌將記錄在日志中,因為 URL 通常保存在日志中。 任何有權訪問日志的人都可以解碼令牌並出於惡意原因使用令牌中的有效負載。 請改用 HTTP 接頭。
你應該做什么
如果 URL 令牌是您在自己的服務器上創建的。 你甚至不需要 jwt_decode。 只需使用您用於驗證令牌的 JWT 模塊隨附的方法即可。 在回調中,您將獲得附加到該特定令牌的有效負載,使用有效負載創建新的訪問令牌並將其發送到前端。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.