1. 程式人生 > >cordova開發H5APP(三)登陸的統一認證前端實現

cordova開發H5APP(三)登陸的統一認證前端實現

場景:登陸用的是外部的、走人家的認證然後跳回自己的APP。cordova跳出去怎麼讓他攜帶引數自動跳回呢

解決:藉助InAppBrowser

cordova plugin add cordova-plugin-inappbrowser

安裝完了。看程式碼


        var _this = this;
        var win = cordova.InAppBrowser.open(config.djgLoginUrl + '?Type=1', '_blank', 'location=no,hidden=yes');
        win.show();
        win.addEventListener("loadstop", function () {
          var loop = setInterval(function () {
            win.executeScript(
              {
                code: "localStorage.getItem('Uid')"//登陸成功後臺的程式碼寫入瀏覽器Uid
              },
              function (values) {
                var name = values[0];
                if (name) {
                  clearInterval(loop);
                  //設定學生端Token
                  console.log(name)//這個就是後臺給的Uid
                  win.close();
                }
              }
            );
          });
        });

注意、別用alert進行輸出測試、

過程描述:開啟要認證的網頁、載入完成後設定定時器、定時器最小時間去執行win.executerScript、win.executerScript呼叫回撥函式。回撥函式內會檢視win.executerScript獲取的localstorage的Uid的值、有了就幹掉定時器、關掉網頁顯示本頁。