Browse Source

Fix base64 padding in JWT token parsing

Ensures the JWT token body is properly padded before decoding by adding '=' characters as needed. This prevents errors when decoding tokens with missing base64 padding.
pull/23976/head
Fahri Gedik 12 months ago
parent
commit
1c23c8547c
  1. 5
      npm/ng-packs/packages/oauth/src/lib/services/remember-me.service.ts

5
npm/ng-packs/packages/oauth/src/lib/services/remember-me.service.ts

@ -38,7 +38,10 @@ export class RememberMeService {
}
getFromToken(accessToken: string) {
const tokenBody = accessToken.split('.')[1].replace(/-/g, '+').replace(/_/g, '/');
let tokenBody = accessToken.split('.')[1].replace(/-/g, '+').replace(/_/g, '/');
while (tokenBody.length % 4 !== 0) {
tokenBody += '=';
}
try {
const parsedToken = JSON.parse(atob(tokenBody));
return Boolean(parsedToken[this.#rememberMe]);

Loading…
Cancel
Save