JWT 解碼器

貼上後立即解碼任何 JSON Web Token,讀取標頭、負載與宣告,並自動檢查到期與生效時間。此工具不會驗證簽章,僅適合除錯與檢視,不能用來驗證正式環境的權杖。

貼上 JWT(header.payload.signature),貼上後立即解碼。

已解碼的權杖

結果將在此顯示...

如何使用 JWT 解碼器

  1. 將 JWT 權杖貼到輸入區域
  2. 貼上或輸入時,權杖會自動解碼
  3. 檢視解碼後的標頭、負載與簽章區段
  4. 檢查權杖有效性、到期時間與主要宣告
  5. 使用區段旁的複製按鈕,只複製該部分

用 JWT Decoder 讀懂 JSON Web Token

這個解碼器的功能

JSON Web Token 由三個以句點串接、經過 Base64URL 編碼的部分組成,也就是 header、payload 與 signature。這個解碼器會依那些句點切分字串,把 header 和 payload 還原成可讀的 JSON,並原樣顯示 signature 片段。它會讀取 header 裡的 alg 欄位,接著把標準的註冊宣告(sub、iss、aud、jti)和時間相關宣告一併列出,讓你一眼看出這個 token 主張了什麼。

貼上 token 的當下就會開始解碼,不需要另外按送出。若你只是想看看解碼後的結構長什麼樣子,也可以載入範例 token。

什麼時候用

每當帶驗證的請求出現非預期行為,而你需要看清 token 實際攜帶了什麼時,它就派得上用場。常見情況是一個你想不通的 401:貼上 token,狀態列會立刻告訴你它是已過期、尚未生效,還是仍在有效期間內。

在搭建登入流程時也很方便,可以確認 issuer、audience 與 subject 是否和後端預期的一致,或檢查你在伺服器端加入的自訂宣告是否真的進到了 payload。

範例:讀取三個部分

以 eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0In0.SflKx... 這種形式的 token 為例,第一段會解碼成類似 {"alg":"HS256","typ":"JWT"} 的 header,第二段解碼成類似 {"sub":"1234","iat":1700000000,"exp":1700003600} 的 payload,第三段則維持為不透明的 signature。解碼器會把數值 iat 與 exp 轉換成本地時間的日期,若 token 仍然有效,還會顯示距離過期還剩多少時間。

注意事項與邊界情況

解碼不等於驗證。這個工具從不會拿 signature 去比對密鑰或公鑰,因此解碼成功的 token 只證明它宣稱了什麼,並不代表這些宣稱可信;在依據 token 做任何處理之前,務必在伺服器端以適當的函式庫驗證 signature。由於 payload 只是經過 Base64URL 編碼,請把其中的內容視為任何持有該 token 的人都能讀取,它並未加密。基於同樣的理由,請避免貼上不屬於你的正式環境 token;另外要記得 exp 與 nbf 是以秒為單位的 Unix 時間戳,這也是為什麼 token 會在 exp 一過的瞬間就顯示為已過期。

常見問題

你貼上的每個 JWT 都會被完整解碼——header、payload、signature、演算法,以及過期與簽發時間——沒有任何功能被藏在付費牆之後。沒有 token 數量限制、沒有進階方案,也沒有要建立的帳號。