javascript - JavaScript 中的用户 session 跟踪?

标签 javascript jquery

我在phonegap(纯js、html、css)中有一个应用程序,用户登录后可以访问一些其他网站。我的问题是如何保存他的个人数据或他的 session 。没有涉及发送 cookie 或处理 session 的 php。一切都需要保存在 JS (jQuery) 中。我怎样才能做到这一点?

最佳答案

您可以使用HTML5功能本地存储

例如;

当用户登录时,在本地存储中将一个变量设置为 isAuthenticated

默认为0,登录成功后设置为1。

localStorage.isAuthenticated = 0; // default
OR
localStorage.setItem('isAuthenticated',0);

登录成功

localStorage.isAuthenticated = 1; // default
OR
localStorage.setItem('isAuthenticated',1);

每当您想检查用户的真实性时,只需比较本地存储中的 isAuthenticated 变量的值即可。

var isLoggedIn = localStorage.getItem('isAuthenticated');

if(isLoggedIn){
    //your code
} else {
    // invalid user code
}

更新 如果您要存储 javascript 对象,则

var myObject = { 'one': 1, 'two': 2, 'three': 3 };

// Put the object into storage
localStorage.setItem('myObject', JSON.stringify(myObject));

// Retrieve the object from storage
var retrievedObject = localStorage.getItem('myObject');
retrievedObject = JSON.parse(retrievedObject)

使用JSON.stringify将对象转换为字符串,然后将其存储到本地存储中。 使用 JSON.parse

检索cast字符串javascript对象

查看本地存储文档,该功能似乎仅限于处理字符串键/值对。

您可以在此处查看文档

Apple

Mozilla

PS:Phonegap 与本地存储或任何其他 HTML 功能的工作无关。 Phonegap 只是一个中间件,可促进您的设备硬件和 javascript/html 代码之间的通信。

关于javascript - JavaScript 中的用户 session 跟踪?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12050059/

相关文章:

jquery - Href 页面导航不适用于单选(输入)按钮

javascript - 如何删除此链接上的 javascript 事件处理程序并将其变成常规链接?

javascript - JEST 测试不理解导入语句

javascript - Jasmine 条件 callThrough 和 callFake

Javascript 规模检查功能性能

jquery - 如何从 Kendo Grid 数据源将对象发送到 Controller ?

jquery - jQuery UI 中是否支持 CSS Sprite

php - 在输入字段中输入字符时自动建议?

javascript - 路线更改后滚动到顶部(嵌套 div)

javascript - 如何使用 knockout 同时应用过滤和分页?