proxy.settings

一个 BrowserSetting 对象,用于更改浏览器的代理设置。

注意:更改代理设置需要私人浏览窗口访问权限,因为代理设置会影响私人和非私人窗口。扩展是否可以访问私人浏览窗口由用户控制。有关详细信息,请参阅 私人浏览中的扩展。您的扩展可以使用 extension.isAllowedIncognitoAccess 检查它是否具有访问私人浏览窗口的权限。如果您的扩展没有私人窗口权限,则调用 proxy.settings.set() 会抛出异常。

底层值是一个对象。设置此对象时,所有属性都是可选的。任何省略的属性将重置为其默认值。

autoConfigUrl 可选

string。用于配置代理的 URL。

autoLogin 可选

boolean。如果密码已保存,则不要提示进行身份验证。默认为 false

ftp 可选 已弃用

string。FTP 代理的地址。可以包含端口。

http 可选

string。HTTP 代理的地址。可以包含端口。

httpProxyAll 可选

boolean。对所有协议使用 HTTP 代理服务器。默认为 false

passthrough 可选

string。不应代理的主机列表(用逗号分隔)。可以定义为

  • HOST_NAME[:PORT],例如:example.comexample.com:1234
  • IP_LITERAL[:PORT]
  • IP_LITERAL/PREFIX_LENGTH_IN_BITS,使用 CIDR 表示法
  • <local>,绕过对所有不包含句点的主机名的代理。

您可以使用 IPv6 地址。例如,[::123]

主机 localhost127.0.0.1[::1] 从不代理。

proxyDNS 可选

boolean。是否在使用 SOCKS 代理时代理 DNS。在使用 SOCKS5 时默认为 true,在使用 SOCKS4 时默认为 false。在 Firefox 128 之前,它默认情况下对 SOCKS4 和 SOCKS5 都是 false

proxyType 可选

string。要使用的代理类型。这可以是: "none"、"autoDetect"、"system"、"manual"、"autoConfig"。默认为 "system"。

socks 可选

string。SOCKS 代理的地址。可以包含端口。

socksVersion 可选

integer。SOCKS 代理的版本。可以是 4 或 5。默认为 5。

ssl 可选

string。TLS/SSL 代理的地址。可以包含端口。

示例

js
let proxySettings = {
  proxyType: "manual",
  http: "http://proxy.org:8080",
  socksVersion: 4,
  passthrough: ".example.org",
};

browser.proxy.settings.set({ value: proxySettings });

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。