Skip to content

Commit 5e00358

Browse files
Merge pull request #963 from kranich/master
Fix issue with replacement of code and state in URL
2 parents c96797f + 70fd826 commit 5e00358

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

projects/lib/src/oauth-service.ts

+8-5
Original file line numberDiff line numberDiff line change
@@ -1699,11 +1699,14 @@ export class OAuthService extends AuthConfig implements OnDestroy {
16991699
const sessionState = parts['session_state'];
17001700

17011701
if (!options.preventClearHashAfterLogin) {
1702-
const href = location.href
1703-
.replace(/[&\?]code=[^&\$]*/, '')
1704-
.replace(/[&\?]scope=[^&\$]*/, '')
1705-
.replace(/[&\?]state=[^&\$]*/, '')
1706-
.replace(/[&\?]session_state=[^&\$]*/, '');
1702+
const href = location.origin + location.pathname +
1703+
location.search.replace(/code=[^&\$]*/, '')
1704+
.replace(/scope=[^&\$]*/, '')
1705+
.replace(/state=[^&\$]*/, '')
1706+
.replace(/session_state=[^&\$]*/, '')
1707+
.replace(/^\?&/, '?')
1708+
.replace(/&$/, '')
1709+
.replace(/^\?$/, '') + location.hash;
17071710

17081711
history.replaceState(null, window.name, href);
17091712
}

0 commit comments

Comments
 (0)