我想用onsen ui和angularjs來開發一個hybird應用程序,但是現在我遇到了一個問題,這個應用程序不能存儲用戶的登錄信息,所以用戶必須每次關閉應用程序後都要登錄。如何使用onsen ui存儲登錄信息?
我使用$ cookie,service和$ rootScope來存儲用戶的登錄信息,但它們都不能在android平臺上工作。
任何人都可以幫我解決這個問題呢?
我想用onsen ui和angularjs來開發一個hybird應用程序,但是現在我遇到了一個問題,這個應用程序不能存儲用戶的登錄信息,所以用戶必須每次關閉應用程序後都要登錄。如何使用onsen ui存儲登錄信息?
我使用$ cookie,service和$ rootScope來存儲用戶的登錄信息,但它們都不能在android平臺上工作。
任何人都可以幫我解決這個問題呢?
在像Onsenui這樣的HTML5移動框架上,我建議使用localStorage。
你可以看看這兩個AngularJs模塊:
他們已經很好的書面說明和演示代碼作爲參考。
非常感謝,這有助於我解決這個問題。 – Miao
使用這個插件https://github.com/litehelpers/Cordova-sqlite-storage或類似建立SQLite數據庫的東西。用你想保留的信息(用戶名和密碼)創建一張表。您可以創建密碼的散列並將其存儲以提高安全性(md5或sha1)。
您還可以保留登錄的時間戳並讓用戶登錄特定的時間間隔,因此當他打開該應用程序時,檢查您是否在此時間間隔內(如日,周等)最後一次登錄,如果是,則自動登錄,否則再次顯示登錄屏幕。
聽起來不錯,我會學習如何使用它。謝謝你的幫助。 – Miao
if (window.localStorage.getItem("rememberMe") == "true") {
$scope.userEmail = window.localStorage.getItem("userName");
$scope.userPassword = window.localStorage.getItem("password");
document.getElementById("rememberMe").checked = true;
}
else {
document.getElementById("rememberMe").checked = false;
}
if (document.getElementById("rememberMe").checked == true) {
window.localStorage.setItem("rememberMe", "true");
window.localStorage.setItem("userName", $scope.userEmail);
window.localStorage.setItem("password", $scope.userPassword);
}
else if (document.getElementById("rememberMe").checked == false) {
window.localStorage.setItem("rememberMe", "false");
window.localStorage.setItem("userName", "");
window.localStorage.setItem("password", "");
}
嗨!看看上面的代碼。它存儲在本地存儲
小建議,但你應該出於安全原因散列密碼。然後,每當他們重新登錄時,重新密碼輸入並將其與保存的哈希值進行比較。 – Krythic