Javascript 同一页面的不同实例的不同唯一令牌

Javascript 同一页面的不同实例的不同唯一令牌,javascript,jquery,Javascript,Jquery,我有一组具有设备Id的设备。右键单击每个设备时,它将传递设备Id并在多个选项卡中打开相同的页面(在新选项卡中的每个右键单击相同页面),并显示所单击设备的相应详细信息 在这里,我必须为每个选项卡保留不同的标记(随机字符串变量)。并且在页面刷新时不应更改令牌。 我该怎么做?我试过一些东西,但不起作用 创建一个随机字符串,将设备Id附加到该字符串,并作为 var prToken = window.localStorage.getItem('token'); if(prToken){

我有一组具有设备Id的设备。右键单击每个设备时,它将传递设备Id并在多个选项卡中打开相同的页面(在新选项卡中的每个右键单击相同页面),并显示所单击设备的相应详细信息

在这里,我必须为每个选项卡保留不同的标记(随机字符串变量)。并且在页面刷新时不应更改令牌。 我该怎么做?我试过一些东西,但不起作用

创建一个随机字符串,将设备Id附加到该字符串,并作为

var prToken = window.localStorage.getItem('token');
        if(prToken){
            var subString = prToken.substring(10, prToken.length);
            if(subString == GlobalVar.Inventory.device.id){
                console.log(window.localStorage.getItem('token')+"====token");
            }else{
                var rString = GlobalVar.Inventory.randomString(10, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',GlobalVar.Inventory.device.id);
                window.localStorage.setItem('token', rString);
            }

        }else{
            var rString = GlobalVar.Inventory.randomString(10, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',GlobalVar.Inventory.device.id);
            window.localStorage.setItem('token', rString);
        } 
在这里,我为每个选项卡获取不同的令牌,但问题是,令牌在页面刷新时发生变化


需要帮助。

解决了我自己的问题,对我来说效果很好

将“token”变量替换为设备Id

。然后一切顺利。 那么代码就是

    var prToken = window.localStorage.getItem(GlobalVar.Inventory.device.id);
            if(prToken){
                var subString = prToken.substring(10, prToken.length);
                if(subString == GlobalVar.Inventory.device.id){
                    console.log(window.localStorage.getItem(GlobalVar.Inventory.device.id)+"====token");
                }else{
                    var rString = GlobalVar.Inventory.randomString(10, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',GlobalVar.Inventory.device.id);
                    window.localStorage.setItem(GlobalVar.Inventory.device.id, rString);
                }

            }else{
                var rString = GlobalVar.Inventory.randomString(10, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',GlobalVar.Inventory.device.id);
                window.localStorage.setItem(GlobalVar.Inventory.device.id, rString);
            }

我自己解决了,对我来说很好

将“token”变量替换为设备Id

。然后一切顺利。 那么代码就是

    var prToken = window.localStorage.getItem(GlobalVar.Inventory.device.id);
            if(prToken){
                var subString = prToken.substring(10, prToken.length);
                if(subString == GlobalVar.Inventory.device.id){
                    console.log(window.localStorage.getItem(GlobalVar.Inventory.device.id)+"====token");
                }else{
                    var rString = GlobalVar.Inventory.randomString(10, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',GlobalVar.Inventory.device.id);
                    window.localStorage.setItem(GlobalVar.Inventory.device.id, rString);
                }

            }else{
                var rString = GlobalVar.Inventory.randomString(10, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',GlobalVar.Inventory.device.id);
                window.localStorage.setItem(GlobalVar.Inventory.device.id, rString);
            }

检查令牌是否已存在-如果已存在,则不要创建新的令牌…如果打开两个选项卡(如T1和T2),当我转到T1并刷新它时,将获得相同的令牌。然后我转到T2,然后回到T1,那么前面的令牌就不会被保留。检查令牌是否已经存在-如果已经存在,就不要创建新的令牌…如果打开两个选项卡,比如T1和T2,当我转到T1并刷新它时,将获得相同的令牌。然后我转到T2,然后回到T1,那么前面的令牌就不会被保留。