Décoder les jetons JWT en JavaScript sans bibliothèques
Le décodage de la charge utile d'un JWT (JSON Web Token) est essentiel pour accéder et utiliser ses revendications dans une application frontale. Vous trouverez ci-dessous deux méthodes efficaces pour décoder les jetons JWT sans bibliothèques :
Navigateur :
Dans l'environnement du navigateur, nous pouvons utiliser les étapes suivantes pour extraire la charge utile JSON :
Code JavaScript :
<code class="javascript">function parseJwt(token) { const base64UrlPayload = token.split('.')[1]; const base64Payload = base64UrlPayload.replace(/-/g, '+').replace(/_/g, '/'); const jsonPayload = decodeURIComponent(window.atob(base64Payload).split('').map(c => { return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2); }).join('')); return JSON.parse(jsonPayload); }</code>
Node.js :
Node.js offre une méthode simple pour décoder les charges utiles JWT :
Code JavaScript :
<code class="javascript">function parseJwt(token) { const base64Payload = token.split('.')[1]; const payloadBuffer = Buffer.from(base64Payload, 'base64'); const payload = JSON.parse(payloadBuffer.toString()); return payload; }</code>
Remarque : Ces méthodes ne valident pas la signature du jeton JWT. Il est fortement recommandé d'utiliser une bibliothèque pour la vérification de la signature afin de garantir l'authenticité du jeton.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!