【问题标题】:Get browser 'installation' ID from Chrome extension从 Chrome 扩展程序获取浏览器“安装”ID
【发布时间】:2017-02-17 21:41:55
【问题描述】:

我正在开发一个将数据发送到 Web API 的 Chrome 扩展程序。我需要在 HTTP 请求中包含一些参数,以唯一标识客户端计算机上的“浏览器安装”。我需要此 ID 来限制 API 接受来自单个用户的请求数。

我已经阅读了this question 的答案,这些答案与我所需要的很接近,但并不完全:

  • 我不能使用chrome.storage,因为如果用户删除扩展程序然后重新安装它,我希望 ID 保持不变
  • 我不能使用chrome.identity,因为它需要用户登录,并且扩展程序必须允许匿名 chrome 用户
  • 我不能使用chrome.system,因为系统信息不是唯一的,不同的计算机最终可能具有相同的ID

【问题讨论】:

    标签: javascript google-chrome google-chrome-extension


    【解决方案1】:

    您应该尽可能鼓励用户登录。但对于跟踪匿名用户,我喜欢这个过去的问题:Detecting a “unique” anonymous user

    没有保证可以跟踪匿名用户的方法。系统就是这样设计的。相反,您可以留下尽可能多的面包屑。甚至有人为一个极其持久的 cookie 创建了一个 api,该 cookie 将自身存储在很多地方。 Evercookie api 已经过时了几年,可以认为是粗鲁的。但这个概念是有效的。

    【讨论】: