答案1
我必须先说,这不是一个解决方案,但研究它是一种学习经历,其他人也可能对我的发现感兴趣。
目前没有简单的方法来设置这些默认值;有关这方面的更多信息,请参见下面的注释。虽然似乎有办法,但我不是程序员,无法按照线索找到它们的来源。如果您在中搜索“权限”,您about:config
将找到一个条目permissions.manager.defaultsUrl
。它指向resource://app/defaults/permissions
。在地址栏中输入该条目并按回车键,您将看到该内部资源的内容:
# This file has default permissions for the permission manager.
# The file-format is strict:
# * matchtype \t type \t permission \t host
# * "origin" should be used for matchtype, "host" is supported for legacy reasons
# * type is a string that identifies the type of permission (e.g. "cookie")
# * permission is an integer between 1 and 15
# See nsPermissionManager.cpp for more...
# UITour
origin uitour 1 https://www.mozilla.org
origin uitour 1 https://support.mozilla.org
origin uitour 1 https://addons.mozilla.org
origin uitour 1 https://discovery.addons.mozilla.org
origin uitour 1 about:home
origin uitour 1 about:newtab
# XPInstall
origin install 1 https://addons.mozilla.org
origin install 1 https://testpilot.firefox.com
# Remote troubleshooting
origin remote-troubleshooting 1 https://input.mozilla.org
origin remote-troubleshooting 1 https://support.mozilla.org
该文件nsPermissionManager.cpp
作为源代码的一部分提供,您可以通过系统或在线找到它。这里是 .cpp 文件,这里是标题。
特别令人感兴趣的是这篇博文讨论它;向下滚动到权限部分。
这是我所能得到的全部信息,即使使用 SQLite 管理器查看后也是如此permissions.sqlite
。如果有办法在 中设置您感兴趣的两个默认值about:config
,我还没有找到。
笔记
“维护离线存储”指定所选网站是否有权在您的硬盘或移动设备上存储离线内容(也称为应用程序缓存)。当浏览器处于离线模式时,可以使用这些数据。”(来源)
为了让浏览该问题的其他人清楚了解,可以通过菜单访问网站权限,Tools > Page Info > Permissions
或者右键单击网页的非活动区域并选择View Page Info
选项Permissions
卡。
历史注释
关于没有简单的方法来设置默认值,请参阅这里:
某些权限可以通过“选项/首选项”页面或可能通过页面进行设置
about:config
,但其他权限的默认值是硬编码的,无法更改。
以前可以about:permissions
通过选择“所有站点”(所有站点的默认权限)来启用此功能(至少对于维护离线存储而言),但 Mozillaabout:permissions
在 Firefox 45 版中将其移除。对此给出的一个非官方原因是“自从选项卡中的新选项/首选项”以来缺少了很多设置”(来源)。这也使无法在一个地方查看所有网站的权限设置。我发现了一个关于 ghacks 的讨论从 2017 年 5 月起,计划重新实施权限管理器。
看本公告从 Firefox 35 开始,需要“操作新的字符串首选项permissions.manager.defaultsUrl
”才能设置默认权限。