privacy.network
privacy.network 屬性包含與隱私相關的網路設定。每個屬性都是一個 types.BrowserSetting 物件。
這些屬性的預設值在不同瀏覽器中往往會有所不同。
屬性
networkPredictionEnabled-
一個
types.BrowserSetting物件,其底層值為布林型別。如果為true,則瀏覽器會嘗試透過預解析 DNS 條目、預渲染網站(例如使用<link rel='prefetch' …>)以及提前開啟到伺服器的 TCP 和 TLS 連線來加速網頁瀏覽。 peerConnectionEnabled-
一個
types.BrowserSetting物件,其底層值為布林型別。如果為false,則RTCPeerConnection介面將被停用。請注意,getUserMedia()不受此設定的影響。 webRTCIPHandlingPolicy-
一個
types.BrowserSetting物件,其底層值為字串型別。此設定允許使用者指定影響 WebRTC 流量路由方式以及本地地址資訊暴露程度的媒體效能/隱私權衡。它可以取以下任一值,從隱私性最低到隱私性最高:defaultdefault_public_and_private_interfacesdefault_public_interface_onlydisable_non_proxied_udpproxy_only(只允許透過代理上的 TCP 連線使用 TURN 的連線)
httpsOnlyMode-
此設定允許您的擴充套件確定使用者是否已啟用 HTTPS-Only 模式。此屬性在所有平臺上都是隻讀的。其底層值為字串,可能取以下三種值之一:
"always":HTTPS-Only 模式已開啟。"never":HTTPS-Only 模式已關閉。"private_browsing":HTTPS-Only 模式僅在隱私瀏覽視窗中開啟。
globalPrivacyControl-
此設定允許您的擴充套件確定使用者是否已啟用 全域性隱私控制元件 (Global Privacy Control)。此屬性在所有平臺上都是隻讀的。其底層值為布林型別,其中
true表示瀏覽器傳送全域性隱私控制元件訊號,false表示瀏覽器不傳送訊號。
示例
設定 webRTCIPHandlingPolicy 屬性
js
function onSet(result) {
if (result) {
console.log("success");
} else {
console.log("failure");
}
}
browser.browserAction.onClicked.addListener(() => {
let getting = browser.privacy.network.webRTCIPHandlingPolicy.get({});
getting.then((got) => {
console.log(got.value);
if (
got.levelOfControl === "controlled_by_this_extension" ||
got.levelOfControl === "controllable_by_this_extension"
) {
let setting = browser.privacy.network.webRTCIPHandlingPolicy.set({
value: "default_public_interface_only",
});
setting.then(onSet);
} else {
console.log("Not able to set webRTCIPHandlingPolicy");
}
});
});
瀏覽器相容性
載入中…
注意:此 API 基於 Chromium 的 chrome.privacy API。本文件源自 Chromium 程式碼中的 privacy.json。