1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| // JWT は3つのパート(ドット区切り)で構成される
// header.payload.signature
const token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8U';
const parts = token.split('.');
console.log('Parts count:', parts.length); // 3 であるべき
console.log('Header:', parts[0]);
console.log('Payload:', parts[1]);
console.log('Signature:', parts[2]);
// デコードして確認
const header = JSON.parse(Buffer.from(parts[0], 'base64url').toString());
const payload = JSON.parse(Buffer.from(parts[1], 'base64url').toString());
console.log('Decoded header:', header); // { alg: 'HS256', typ: 'JWT' }
console.log('Decoded payload:', payload); // { sub: '1234567890', ... }
|