사용자 확인을위한 자바 스크립트 라이브러리로 Azure Active Directory를 호출하는 ADAL.js을 사용하고 있습니다. 나는이에 대해 다음 코드를 사용하고 있습니다 : ADAL.js의 Login()이 Edge에서 호출되지 않았습니다.
- 가 onSuccessLogin()가 항상 호출되지 않습니다 이유 : 모든 크롬에서 잘 작동하지만
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> </head> <body> <script src="https://secure.aadcdn.microsoftonline-p.com/lib/1.0.15/js/adal.min.js"></script> <script> var endpoints = { "https://management.core.windows.net": "https://management.core.windows.net" }; var config = { clientId: 'e333d3fe-a73a-4476-8121-8a57f9a972ca', endpoints: endpoints, }; var authContext = new AuthenticationContext(config); authContext.handleWindowCallback(); function onSuccessLogin(error, token, msg) { console.log("Inside Call back"); if (!!token) { console.log("Log-in to Azure successfully done", token); } else { console.log("Error while log-in to Azure", error); } if (!!authContext._user) { console.log("You are connected to Azure ") } } function login() { authContext.popUp = true; authContext.callback = onSuccessLogin; authContext.login(); // authContext.handleWindowCallback(); var user = authContext.getCachedUser(); console.log(user); }; function logout() { authContext.logout(); }; </script> <input id="Button1" type="button" value="clickme" onclick="clickme()" /> <input id="Button3" type="button" value="login" onclick="login()" /> <input id="Button2" type="button" value="logout" onclick="logout()" /> // These are the text-boxes whose value I want to retain. First name:<br> <input id=fname" type="text" name="firstname" value="Mickey"> <br> Last name:<br> <input id="lname" type="text" name="lastname" value="Mouse"> </body> </html>
이는 가장자리에서이 코드를 사용하여 몇 가지 문제가 있습니다 가장자리?
- 로그인 창이 항상 나타나지 않는 이유는 무엇입니까?
- 신임장을 입력 한 후 언젠가 팝이 닫히지 않습니다. 나를 위해 일한 무엇 는
샘플 링크를 확인하고 제안한대로 정확하게 수행했습니다. 이제 로그인 한 사용자의 경우 잘 돌아가고 있습니다. 그러나 가장자리의 개인 창에서는 콜백이 호출되지 않습니다. 팝이 닫히지 않고 팝업의 URL은 다음과 같이됩니다 : https : // localhost : 44315/# id_token = eyJ0eXsV1cQiLPCJhxbGciOiJSUzI1NiIsI ....................... –
예, Edge와 관련하여 알려진 문제가 있습니다 (라이브러리 때문이 아님). InPrivate에있는 동안 여러 영역을 리디렉션 할 때 로컬 및 세션 저장소가 손실됩니다. Edge는 향후 릴리스에서 스토리지를 수정하는 중입니다. 그 사이에 참조 및 리디렉션 사이트가 모두 동일한 영역에 있는지 확인하여 영역 간 리디렉션을 제거하여 문제를 해결할 수 있습니다. –
가장자리의 비공개 창에서도 작동하지 않습니다. –