1

每当用户启动应用程序时,我都会尝试获取唯一的会话 ID。每次用户进入应用程序时都应创建此 ID。Windows 8 WinJS API 中是否有类似的功能?

4

2 回答 2

2

由于随机性和非常非常非常罕见的冲突机会(重复 id),会话 ID 是并且可能将始终基于 GUID

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


var id = Guid.NewGuid();

由于您使用的是 WinJS,因此没有内置的 Guid 支持,因此您可以创建一个 Windows Store 组件以与您的应用程序一起分发,从而使用 csharp 来创建它,或者在 JavaScript 中生成一个从(请赞成源 SO post如果适用,请在此处链接):

在 JavaScript 中创建 GUID/UUID?


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();
于 2013-02-20T19:43:00.857 回答
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);
    });

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

于 2013-02-21T02:57:55.657 回答