diff --git a/src/App.js b/src/App.js index 8f1f86194bdc3b57ba1df1afe3defb48329aa222..9ea5315c90a2d3e1e8cad4d8f9a66c329252b550 100644 --- a/src/App.js +++ b/src/App.js @@ -1,4 +1,4 @@ -import React from "react"; +import React, { useEffect, useState } from "react"; import { connect } from "react-redux"; import { keycloakAuthenticated, @@ -12,6 +12,21 @@ const App = ({ authenticated, userToken, kcInstance }) => { kcInstance.logout(); }; + const [userInfo, setUserInfo] = useState({}); + + useEffect(() => { + const getData = async () => { + const userInfoResponse = await fetch( + `${userToken.iss}/protocol/openid-connect/userinfo`, + { + headers: { Authorization: `Bearer ${kcInstance.token}` }, + } + ); + setUserInfo(await userInfoResponse.json()); + }; + getData(); + }, [userToken, kcInstance.token]); + return ( <div className="App" style={{ margin: "20px" }}> {!authenticated && <p>Loading...</p>} @@ -30,6 +45,13 @@ const App = ({ authenticated, userToken, kcInstance }) => { {JSON.stringify(userToken, null, 2)} </code> </div> + <hr /> + <p>My user info: </p> + <div> + <code style={{ whiteSpace: "pre-wrap" }}> + {JSON.stringify(userInfo, null, 2)} + </code> + </div> </> )} </div>