在Windows 8 WinJS应用程序中是否有应用程序启动的唯一会话ID?

时间:2013-02-20 19:37:26

标签: javascript windows-8 winjs

每当用户启动应用时,我都会尝试获取唯一的会话ID。每次用户进入应用程序时都应创建此ID。 在Windows 8 WinJS API中是否可以使用这样的东西?

2 个答案:

答案 0 :(得分:2)

会话ID很可能永远是基于GUID的,因为它具有随机性,非常非常罕见的碰撞机会(重复ID)

如果使用csharp(我知道你不在这里,我将解决这个问题),只需在cs中创建应用程序启动时就可以了


var id = Guid.NewGuid();

由于您使用的是WinJS,因此没有内置的Guid支持,因此您可以创建一个Windows应用商店组件来与您的应用一起分发,从而使用csharp创建它,或者在JavaScript中生成一个(请购买)如果适用,源SO帖子链接在这里):

Create GUID / UUID in JavaScript?


function s4() {
  return Math.floor((1 + Math.random()) * 0x10000)
             .toString(16)
             .substring(1);
};

function guid() {
  return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
         s4() + '-' + s4() + s4() + s4();
}

var uuid = guid();

答案 1 :(得分:1)

这是我选择的GUID创建功能......

createGuid: function () {
    return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
        var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);
        return v.toString(16);
    });

如果你看得太久你的头会爆炸,所以只需插上它并使用它:)