JavaScript如何唯一标识网站

JavaScript如何唯一标识网站,javascript,google-chrome-extension,Javascript,Google Chrome Extension,我正在为chrome编写一个扩展,但我的问题可能也有常规的JavaScript解决方案 My extensions增强/扩展了网站可用的API 例如,网站可以从我的扩展请求访问UDP套接字,并会提示用户获得权限 当提示用户是否希望访问该站点时,我需要记住哪些站点可以访问哪些功能 网站标识的最佳形式是什么,可以通过常规javascript获得,也可以使用chrome扩展API获得 我的想法 域名可以使用,但在appspot.com这样的域名上,当单个应用请求权限时,该域名下的所有应用现在都可以访问

我正在为chrome编写一个扩展,但我的问题可能也有常规的JavaScript解决方案

My extensions增强/扩展了网站可用的API

例如,网站可以从我的扩展请求访问UDP套接字,并会提示用户获得权限

当提示用户是否希望访问该站点时,我需要记住哪些站点可以访问哪些功能

网站标识的最佳形式是什么,可以通过常规javascript获得,也可以使用chrome扩展API获得

我的想法

域名可以使用,但在appspot.com这样的域名上,当单个应用请求权限时,该域名下的所有应用现在都可以访问

查看子域的问题是,您通常需要整个域的权限

我认为最有意义的解决方案只适用于HTTPS,就是查看域证书。我应该能够比较公钥或其他东西,然后它与证书一致。如果我知道的没错,您可以选择为整个域或子域等创建证书。遗憾的是,JavaScript中似乎没有任何访问证书信息的方法,chrome扩展API似乎也没有提供任何内容。这看起来确实是一个完美的解决方案


在所有网站中,权限的标准标识是。scheme://host:port 端口是可选的,您可以通过手动字符串操作或作为新的urlstring.origin进行提取,尽管此端口速度较慢,尤其是对于超长字符串数据URI


为了解决域问题,有很多库和。

什么是网站标识的最佳形式-URL据我所知,您不仅需要存储每个网站的权限,还需要存储与用户的权限,这意味着用户需要在您的扩展上进行身份验证,然后你可以使用URL或它的一部分,比如主机,路径,任何你认为更适合你的情况。