如何使用Stack Snippet获取用户ID?

时间:2015-12-31 17:55:32

标签: javascript html

我打算在div directive中针对挑战制作一种哈希算法。为了做到这一点,我需要一个盐渍哈希算法。我制作了散列算法,但是现在我需要使用 Stack Snippet 获取当前StackExchange站点上当前用户的用户ID,它只使用 HTML CSS Javascript

此处显示用户ID:

Programming Puzzles and Code Golf

请注意,这不是我所在的当前网址。

有谁知道怎么做?我在网站的源代码中找到了以下内容:

StackExchange.init({...,"user":"fkey":...,"rep":...,"userId":2976513,"accountId":...}

用点表示不相关的数据。如何从中获取userId?我正在使用它在Stack Snippet中制作盐渍哈希enter image description here

2 个答案:

答案 0 :(得分:2)

据我所知,Stack-Nippets(托管在http://stacksnippets.net/上)将允许访问http://stackoverflow.com(例如window.top或其他交叉由于同源政策,所以 - 域名等。) 显然这是为了安全,因此恶意用户无法在堆栈片段中隐藏恶意脚本(自动化某些“用户行为”)。

修改
虽然你可以得到问题的网址:

alert(document.referrer);

它通常不包含用户ID:
https://stackoverflow.com/questions/[question_id]/[question_title]

<强> EDIT2:
此外,还有https://stackoverflow.com/a/34550464/588079之类的直接链接 (格式https://stackoverflow.com/a/[answer_id]/[user_id])将被更改/重定向到https://stackoverflow.com/questions/[question_id]/[question_title]/[answer_id]#[answer_id]

答案 1 :(得分:0)

StackExchange.options.user.userId包含任何StackExchange站点的当前用户ID(它们在站点之间不同,即使对于同一用户也是如此)。

如果用户未登录,则为undefined