我打算在div directive中针对挑战制作一种哈希算法。为了做到这一点,我需要一个盐渍哈希算法。我制作了散列算法,但是现在我需要使用 Stack Snippet 获取当前StackExchange站点上当前用户的用户ID,它只使用 HTML , CSS 和 Javascript 。
此处显示用户ID:
Programming Puzzles and Code Golf
请注意,这不是我所在的当前网址。
有谁知道怎么做?我在网站的源代码中找到了以下内容:
StackExchange.init({...,"user":"fkey":...,"rep":...,"userId":2976513,"accountId":...}
答案 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
。