Php 记住我-它在混合移动应用程序上的工作原理
我正在使用intel xdk和cordova插件为我的网站开发一个应用程序。现在,我如何开发一个具有基本“记住我”功能的登录?可以使用cookie吗?或者有什么安全的方法?目前我可以使用ajax请求登录服务器(php)。但如何包含此功能。有什么想法吗 添加了我的登录功能Php 记住我-它在混合移动应用程序上的工作原理,php,cordova,login,hybrid-mobile-app,intel-xdk,Php,Cordova,Login,Hybrid Mobile App,Intel Xdk,我正在使用intel xdk和cordova插件为我的网站开发一个应用程序。现在,我如何开发一个具有基本“记住我”功能的登录?可以使用cookie吗?或者有什么安全的方法?目前我可以使用ajax请求登录服务器(php)。但如何包含此功能。有什么想法吗 添加了我的登录功能 if($.trim(email).length>0 && $.trim(password).length>0) { $.ajax({
if($.trim(email).length>0 && $.trim(password).length>0) {
$.ajax({
type: "POST",
url: "http://www.example.com/app/login.php",
crossDomain: true,
dataType: 'json',
data: $.trim(frm.serialize()),
beforeSend: function(){
$('#loader').css({ display: "block" });
},
success: function(data,status,XHR) {
handleData(data);//handle the servers respond
},
error: function(httpReq,status,exception){
alert("Network error: "+status+" "+exception);
$('#loader').css({ display: "none" });
}
});
}
那么句柄数据代码如下所示:
function handleData( responseData ) {
var access = responseData;
if(access == "good"){//server respond good username/pass
alert("Welcome");
$('#loader').css({ display: "none" });
}
else{
alert("Your username and password didn\'t match.");
$('#input_password').val('');
$('#loader').css({ display: "none" });
}
console.log(responseData);
}
服务器仅对正确的用户名/密码响应“良好”。和“坏”表示错误的凭据登录。您可以使用WebSQL存储登录凭据/数据(希望使用2048bit的密钥强度进行加密),也可以将其用于应用程序的其他模块,在这些模块中,您需要存储特定场景下的数据(未加密),例如脱机使用、缓存和应用程序存储 WebSQL提供了一个API,用于在结构化数据库中存储数据,该数据库可以使用标准SQL语法(特别是SQLite)进行查询。因此,它提供了SQL的所有功能(和复杂性) 它由以下Cordova平台上的基础WebView支持: 安卓, 黑莓10和 iOS 创建或打开数据库的入口点是window.openDatabase()方法:
选择“记住我”选项后,尝试在应用程序中存储登录信息,并将其用于后续登录。事实上,cordova应用程序中有一个插件可以存储安全信息。看看这个-Hi@Gandhi,它在windows phone上工作吗?就这个插件而言,它只在iOS和Android上工作。但是,您可以通过将敏感信息存储在本地存储器中,并使用RSA算法对其进行加密,而RSA算法只能由您的服务器解密,从而将逻辑扩展到windows。这是我们用来在应用程序中存储一些敏感信息的方法。希望有帮助。@Gandhi也帮个忙,你能告诉我如何将其集成到我的登录代码中吗?集成部分很大程度上依赖于你现有的登录逻辑。为了提供概述,您可以在首次登录时使用“记住我”选项将凭据存储在本地存储(加密)中,然后将存储凭据用于后续逻辑。不建议使用WebSQL数据库,因为它已被弃用。
var db = window.openDatabase(name, version, displayName, estimatedSize);