ionic2从系统浏览器获取数据

时间:2016-06-04 10:00:11

标签: android ios mobile browser ionic2

我正在开发一款需要使用外部链接登录的Ionic 2应用程序。出于安全原因,我宁愿在系统浏览器中打开链接。打开链接并使用用户名&登录后密码,一个令牌将在html的正文中返回。有没有办法将该令牌传递给我的应用程序?或者还有其他解决方案可以解决这个问题吗?谢谢。

1 个答案:

答案 0 :(得分:0)

这是非常概念性的,但你可以使用cordova插件inappbrowser打开应用程序内的浏览器,听取退出事件等待用户关闭应用内浏览器,然后注入脚本从html中检索令牌,如:

inAppBrowserRef = undefined;

showLogin(url) {

    var target = "_blank";

    var options = "location=yes,hidden=yes";

    this.inAppBrowserRef = cordova.InAppBrowser.open(url, target, options);

    with (this.inAppBrowserRef) {
        addEventListener('exit', this.exitCallBack);
    }

}

exitCallBack(params) {

   captureToken = "return token = [[jquery to retrieve the token]]";



    this.inAppBrowserRef.executeScript({ code: captureToken}, this.executeScriptCallBack);

    this.inAppBrowserRef.close();

    this.inAppBrowserRef = undefined;

}

executeScriptCallBack(token) {

this.token=token;


}