|
|
- import React from 'react';
- import ReactDOM from 'react-dom';
- import './index.css';
- import App from './App';
- import reportWebVitals from './reportWebVitals';
-
- import Keycloak from "keycloak-js";
-
- const initOptions = {
- url: 'http://localhost:8080/auth', realm: 'demorealm', clientId: 'react-app', onLoad: 'login-required'
- }
-
- const keycloak = Keycloak(initOptions);
-
- keycloak.init({ onLoad: initOptions.onLoad }).then((auth) => {
- if (!auth) {
- window.location.reload();
- } else {
- ReactDOM.render(
- <React.StrictMode>
- <App keycloak={keycloak}/>
- </React.StrictMode>,
- document.getElementById('root')
- );
-
- // If you want to start measuring performance in your app, pass a function
- // to log results (for example: reportWebVitals(console.log))
- // or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
- reportWebVitals();
- }
-
-
- //Token Refresh
- setInterval(() => {
- keycloak.updateToken(70).then((refreshed) => {
- if (refreshed) {
- console.info('Token refreshed' + refreshed);
- } else {
- console.warn('Token not refreshed, valid for '
- + Math.round(keycloak.tokenParsed.exp + keycloak.timeSkew - new Date().getTime() / 1000) + ' seconds');
- }
- }).catch(() => {
- console.error('Failed to refresh token');
- });
- }, 1000)
-
- }).catch(() => {
- console.error("Authenticated Failed");
- });
|