gpt4 book ai didi

javascript - 如何为每个用户生成唯一 key ?

转载 作者:行者123 更新时间:2023-11-29 15:30:36 29 4
gpt4 key购买 nike

我制作了一个 jquery 弹出框,通过接受按钮向用户显示一些信息。当用户进入我的网站时,用户将看到该弹出框。

此时,我将wait保存在数据库表的'answer'列中,用户id。

如果用户单击接受按钮,我会在该用户 ID 的 'answer' 列中从 wait 更新为 yes 并且不显示弹出窗口今天该用户的框。

如果用户没有点击接受按钮并重新加载页面,再次显示弹出框,因为该用户 ID 的wait 状态没有改变,用户不能做任何事情。

我已经完成了那部分,一切都很好。

现在我想使用来自另一个网站的弹出窗口。

假设,我已经在 a.com 中创建了弹出框,并且我还想使用来自 b.com 或任何其他网站的弹出程序。

所以,我创建了一个脚本,可以像这样从任何其他网站访问 a.com 的弹出窗口,

<script src="/js/jquery-1.11.3.min.js"></script>
<script src="/js/jquery.ui/jquery-ui-1.11.4.js"></script>
<link href="/css/jquery-ui-1.11.4.css" rel="stylesheet" />
<script>
$(document).ready(function(){
var div = document.createElement("div");
div.setAttribute("class","popup");
document.body.appendChild(div);
var id = '1234';//I need to assign different value for each user
var stype = "static";
$(".popup").load("http://a.com/popup/popup_proce.php,{unique_id:id,script_type:stype}");
});
</script>

这个脚本可以显示弹出程序。但是,问题是,如果用户点击接受按钮,我需要检查用户是否已经点击了接受按钮。

所以,我需要知道每个用户的唯一 ID,以便将该记录保存到数据库中。

如果用户今天已经看到弹出窗口并单击接受按钮,我不想在今天为用户显示弹出窗口。

主要问题是我需要为上述脚本中的每个用户生成 cookie 作为 id,因为我需要检查该用户是否已经接受弹出窗口并需要保存该用户数据。

如果我为 id 使用随机值,我无法检查用户是否已经接受(仍然是 wait 状态)。因为当我重新加载(刷新)页面时,随机 ID 被更改并保存为新 ID。

因此,我无法检查之前 id 的 wait 状态,当我刷新页面时它总是保存为新 id。这就是我的问题。

所以,我认为,我需要为每个用户 ID 创建 cookie,而不是随机值。

当我尝试使用这样的 cookie 时,

document.cookie = "unique_id=123456";
var id = document.cookie;

我无法从 a.com 访问该 cookie 结果。我想我错了。我对跨域 cookie 的经验不多。

非常感谢任何建议。

最佳答案

至少您可以尝试使用以下代码来生成自定义 UUID:

function getNewID()
{
var d = new Date().getTime();
if (window.performance && typeof window.performance.now === "function")
{
d += performance.now();
; // use high-precision timer if available
}
var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c)
{
var r = (d + Math.random() * 16) % 16 | 0;
d = Math.floor(d / 16);
return (c == 'x' ? r : (r & 0x3 | 0x8)).toString(16);
});
return uuid;
}

关于javascript - 如何为每个用户生成唯一 key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35309515/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com