首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ADAL.JS与离线网络应用

ADAL.JS与离线网络应用
EN

Stack Overflow用户
提问于 2017-02-20 19:35:37
回答 3查看 167关注 0票数 0

我有一个实现ADAL.JS的网页。

当通过web浏览页面时,它工作得很好;然而,当我尝试在iPhone上查看它时,我已经将它保存为桌面上使用Add主屏幕按钮的快捷方式,事情就乱了套了。

初始页面(index.html)使用apple-mobile-web-app-capable元标记正确显示;但是,当身份验证被调用时,我会被带到一个真正的浏览器窗口。一旦重定向回index.html,我仍然在单独的浏览器窗口中,而不是Web视图。

最终,我希望将其作为一个离线网站,在apple-mobile-web-app-capable生成的视图中运行所有页面功能。对于如何实现这一点,任何其他想法都将受到赞赏。

提前谢谢。

EN

回答 3

Stack Overflow用户

发布于 2017-02-20 19:56:05

这是目前iOS网络应用程序中存在的一个大问题。每个链接或重定向都会在一个新窗口中打开。您可以用window.location.href修改JavaScript来修复它。

票数 0
EN

Stack Overflow用户

发布于 2017-02-20 23:15:11

好像漏掉了什么.我得到了urlNavigate没有定义的error...suggestions?

代码语言:javascript
运行
复制
alert('Running Auth');

online = navigator.onLine;

代码语言:javascript
运行
复制
authContext = new AuthenticationContext({
    tenant: azureTenant,
    clientId: azureClientId,
    postLogoutRedirectUri: window.location,
    //redirectUri: "https://shlpkpiapi.azurewebsites.net/kpiapp/test.html"
});

authContext.config.displayCall=function(url){ 

    if (urlNavigate) 
    { 
        this.info('Navigate to:' + urlNavigate); 
        window.location.href=urlNavigate; 
    } 
    else
    { 
        this.info('Navigate url is empty'); 
    } 
}



if (authContext.isCallback(window.location.hash)) {

    authContext.handleWindowCallback();
    var err = authContext.getLoginError();
    if (err) {
        alert('Error on callback')
    }
}
else {

    var user = authContext.getCachedUser();
    if (user) {
        //We have a user in cache and are using those credentials
        console.log('Signed in as: ' + user.userName);


    } else {
        console.log('Not signed in.')
        if (online)
        {
            alert('signing in');
            authContext.login();
        }
        else
        {
            alert('currently offline');
        }       
    }
}
票数 0
EN

Stack Overflow用户

发布于 2017-02-21 16:48:21

好的.我做了修改,错误消失了,但我不明白这是如何解决这个问题的。当我将我的页面添加到我的IPhone主屏幕(https://xxxxx.azurewebsites.net/app/test.html),然后点击瓷砖,我就会被带到test.html页面。在该页面上,有一个auth函数执行,它使用adal.js并带我到“https://login.microsoftonline.com/xxx.onmicrosoft.com/oauth2.”。这将显示在我的IOS Web应用程序的范围内,并列出我的帐户和使用另一个帐户选项。我点击我的帐户或选择使用另一个帐户选项,我被带到另一个页面打开在Safari。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42352897

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档