Electron.js API参考——支持的命令行开关

本文详细介绍了Electron框架支持的命令行开关,包括远程调试、网络设置、代理配置、性能调整等多个方面,帮助开发者更好地理解和控制Electron应用的行为。例如,`--remote-debugging-port`用于开启远程调试,`--disable-http-cache`禁用HTTP缓存,`--proxy-server`设置代理服务器等。了解这些开关有助于优化和调试Electron应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

支持的命令行开关

Electron支持的命令行开关。

您可以使用app.commandLine.appendSwitch将它们附加到应用程序的主脚本中,然后发出app模块的ready事件:

const { app } = require('electron')
app.commandLine.appendSwitch('remote-debugging-port', '8315')
app.commandLine.appendSwitch('host-rules', 'MAP * 127.0.0.1')

app.whenReady().then(() => {
  // Your code here
})

--auth-server-whitelist =url

启用了集成身份验证的服务器的逗号分隔列表。

例如:

--auth-server-whitelist='*example.com, *foobar.com, *baz'

那么任何url结尾example.comfoobar.combaz将被视为集成身份验证。没有*前缀的URL必须完全匹配。

--auth-negotiate-delegate-whitelist =url

以逗号分隔的服务器列表,需要委派用户凭据。没有*前缀的URL必须完全匹配。

--disable-ntlm-v2

禁用posix平台的NTLM v2,在其他地方无效。

--disable-http-cache

禁用HTTP请求的磁盘缓存。

--disable-http2

禁用HTTP / 2和SPDY / 3.1协议。

--disable-renderer-backgrounding

防止Chromium降低不可见页面的渲染器进程的优先级。

该标志对于所有渲染器进程都是全局的,如果您只想在一个窗口中禁用限制,则可以采取 播放无声音频的方法

--disk-cache-size =size

强制磁盘缓存使用的最大磁盘空间(以字节为单位)。

--enable-api-filtering-logging

启用以下API的调用者堆栈日志记录(过滤事件):

  • desktopCapturer.getSources() / desktop-capturer-get-sources
  • remote.require() / remote-require
  • remote.getGlobal() / remote-get-builtin
  • remote.getBuiltin() / remote-get-global
  • remote.getCurrentWindow() / remote-get-current-window
  • remote.getCurrentWebContents() / remote-get-current-web-contents

-启用日志记录

打印Chromium的登录控制台。

由于此开关是在app.commandLine.appendSwitch加载用户应用程序之前进行解析的,因此无法使用,但是您可以设置ELECTRON_ENABLE_LOGGING 环境变量以达到相同的效果。

--host-rules =rules

以逗号分隔的列表,rules用于控制主机名的映射方式。

例如:

  • MAP * 127.0.0.1 强制将所有主机名映射到127.0.0.1
  • MAP *.google.com proxy 强制将所有google.com子域解析为“代理”。
  • MAP test.com [::1]:77强制“ test.com”解析为IPv6环回。还将强制将所得套接字地址的端口设置为77。
  • MAP * baz, EXCLUDE www.google.com将“ www.google.com”以外的所有内容重新映射到“ baz 

这些映射适用于网络请求中的终结点主机(直接连接中的TCP连接和主机解析器,CONNECTHTTP代理连接中的终结点主机和代理连接中的端点主机SOCKS)。

--host-resolver-rules =rules

--host-rules但这些rules仅适用于主机解析器。

--ignore-certificate-errors

忽略与证书相关的错误。

--ignore-connections-limit =domains

忽略domains列表的连接限制,以分隔,

--js-flags =flags

指定传递给Node.js引擎的标志。如果要flags在主进程中启用,则必须在启动Electron时传递它。

$ electron --js-flags="--harmony_proxies --harmony_collections" your-app

请参阅Node.js文档node --help在您的终端中运行以获取可用标志的列表。此外,运行node --v8-options以查看标记列表,这些标记专门涉及Node.js的V8 JavaScript引擎。

--lang

设置自定义语言环境。

--log-net-log =path

允许保存网络日志事件并将其写入path

--no-proxy-server

不要使用代理服务器,而要直接建立连接。覆盖传递的任何其他代理服务器标志。

-无沙箱

禁用Chromium沙箱(默认情况下已启用)。仅应用于测试。

--proxy-bypass-list =hosts

指示Electron绕过给定的以分号分隔的主机列表的代理服务器。仅当与一起使用时,此标志才有效 --proxy-server

例如:

const { app } = require('electron')
app.commandLine.appendSwitch('proxy-bypass-list', '<local>;*.google.com;*foo.com;1.2.3.4:5678')

将使用代理服务器的所有主机,除了本地地址(localhost, 127.0.0.1等等),google.com子域,包含后缀的主机 foo.com在和任何1.2.3.4:5678

--proxy-pac-url =url

在指定的位置使用PAC脚本url

--proxy-server =address:port

使用指定的代理服务器,该服务器将覆盖系统设置。此开关仅影响使用HTTP协议的请求,包括HTTPS和WebSocket请求。还值得注意的是,并非所有代理服务器都支持HTTPS和WebSocket请求。根据Chromium问题,代理URL不支持用户名和密码身份验证。

--remote-debugging-port =port

在指定的上通过HTTP启用远程调试port

--ppapi-flash-path =path

设置pathPepper Flash插件的。

--ppapi-flash-version =version

设置versionPepper Flash插件的。

--v =log_level

给出默认的最大活动V记录级别;默认值为0。通常,V记录级别使用正值。

此开关仅在--enable-logging通过时也有效。

--vmodule =pattern

给出每个模块的最大V记录级别,以覆盖给出的值 --v。例如,my_module=2,foo*=3将更改源文件my_module.*和中所有代码的日志记录级别foo*.*

任何包含正斜杠或反斜杠的模式都将针对整个路径名而不是模块进行测试。例如,*/foo/bar/*=2将更改foo/bar目录下源文件中所有代码的日志记录级别。

此开关仅在--enable-logging通过时也有效。

--force_high_performance_gpu

有多个可用GPU时,强制使用离散GPU。

--force_low_power_gpu

有多个可用GPU时,强制使用集成GPU。

Node.js标志

Electron支持Node.js支持的某些CLI标志

注意:当不运行时,ELECTRON_RUN_AS_NODE将不支持的命令行开关传递给Electron无效。

--inspect-brk [= [host:] port]

在host:port上激活检查器,并在用户脚本启动时中断。默认host:port是127.0.0.1:9229。

别名为--debug-brk=[host:]port

--inspect-port = [host:] port

设置host:port激活检查器时要使用的。通过发送SIGUSR1信号激活检查器时很有用。默认主机为127.0.0.1

别名为--debug-port=[host:]port

--inspect [= [host:] port]

在上激活检查器host:port。默认值为127.0.0.1:9229

V8检查器集成允许Chrome DevTools和IDE等工具调试和分析Electron实例。这些工具通过TCP端口连接到Electron实例,并使用Chrome DevTools协议进行通信。

有关更多详细信息,请参见《调试主要过程》指南。

别名为--debug[=[host:]port

--inspect-publish-uid = stderr,http

指定检查器Web套接字URL公开的方式。

默认情况下,检查器websocket URL在stderr中和http:// host:port / json / list上的/ json / list端点下可用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值