共计 2830 个字符,预计需要花费 8 分钟才能阅读完成。
本节咱们来看一下 Chrome
浏览器和 Electron
中反对的命令行开关。咱们能够将这些命令行开发在 app
模块的 ready
事件收回之前应用 app.commandLine.appendSwitch
来增加它们到利用的 main
脚本中。
示例:
例如增加一个 remote-debugging-port
到利用的 main
脚本:
const app = require('electron').app;
// 增加命令行开关到脚本
app.commandLine.appendSwitch('remote-debugging-port', '8315');
app.on('ready', function() {// ...});
命令行开关
上面咱们是一些 Electron
反对的罕用的命令行开关。
–auth-server-whitelist=url
启用了集成身份验证的以逗号分隔的服务器列表。
例如:
--auth-server-whitelist='*example.com, *9xkd.com, *jswui'
上述代码示意任何以 example.com
、9xkd.com
、jswui
结尾的 url
, 都须要思考集成验证。如果没有 *
前缀,url
必须齐全匹配。
–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
–client-certificate=path
此命令行开关用于设置客户端的证书文件 path
。
–ignore-connections-limit=domains
此命令行开关能够疏忽用逗号 ,
分隔的 domains
列表的连贯限度。
–disable-http-cache
用于禁止申请 HTTP
时应用磁盘缓存。
–remote-debugging-port=port
用于在指定的端口通过 HTTP
开启近程调试。
–js-flags=flags
用于指定引擎过渡到 JS
引擎。
在启动 Electron
时,如果咱们想在主过程中激活 flags
,它将被转换。
$ electron --js-flags="--harmony_proxies --harmony_collections" your-app
–proxy-server=address:port
应用一个特定的代理服务器,它将比零碎设置的优先级更高,这个开关只有在应用 HTTP
协定时无效,它蕴含 HTTPS
和 WebSocket
申请。值得注意的是,不是所有的代理服务器都反对 HTTPS
和 WebSocket
申请。
–proxy-bypass-list=hosts
批示 Electron
绕过给定的以分号 :
分隔的主机列表的代理服务器。此开关只有与 --proxy server
一起应用时才无效。
例如:
app.commandLine.appendSwitch('proxy-bypass-list', '<local>;*.google.com;*foo.com;1.2.3.4:5678')
上述代码中,除了本地地址 (localhost
,127.0.0.1
etc),google.com
子域名,以 foo.com
结尾的主机地址 hosts
,以及所有在 1.2.3.4:5678
上的地址以外,将会为所有的 hosts
主机应用代理服务器。
–proxy-pac-url=url
此开关用于在指定的 url
上应用 PAC
脚本。
–no-proxy-server
不应用代理服务并且总是应用间接连贯,疏忽所有的正当代理标记。
–host-rules=rules
一个逗号分隔的 rule
列表来管制主机名如何映射。
例如:
MAP * 127.0.0.1
强制所有主机名映射到127.0.0.1
。MAP *.9xkd.com proxy
强制所有9xkd.com
子域 应用 “proxy”。MAP test.com [::1]:77
强制 “test.com” 应用 IPv6 回环地址,也强制应用端口77
。MAP * jswui, EXCLUDE www.9xkd.com
从新全副映射到 “jswui”,除了 ”www.9xkd.com”。
这些映射实用于终端网络申请(TCP
连贯和主机解析以间接连贯的形式,和 CONNECT
以代理连贯,还有终端 host
应用 SOCKS
代理连贯)。
–host-resolver-rules=rules
此开关相似 --host-rules
,然而 rules
只适宜主机解析。
–ignore-certificate-errors
此开关用于疏忽与证书相干的谬误。
–ppapi-flash-path=path
此开关用于设置 Pepper Flash
插件的门路 path
。
–ppapi-flash-version=version
此开关用于设置 Pepper Flash
插件的 version
属性(即版本号)。
–log-net-log=path
此开关用于启用须要保留的网络日志事件并将其写入 path
门路下。
–disable-renderer-backgrounding
此开关用于避免 Chromium
升高暗藏的渲染过程优先级。这个标记对所有渲染过程全局无效,如果咱们只想禁用一个窗口的节流爱护,能够采取 playing silent audio
。
–enable-logging
此开关用于打印 Chromium
信息输入到控制台。
如果在用户利用加载实现之前解析 app.commandLine.appendSwitch
,这个开关将实效,然而你能够设置 ELECTRON_ENABLE_LOGGING
环境变量来达到雷同的成果。
–v=log_level
此开关用于设置默认最大沉闷 V-logging
规范,默认为 0
。通常 V-logging
标准值为正值。
留神这个开关只有在 --enable-logging
开启时无效。
–vmodule=pattern
给定每个模块最大的 V-logging
等级,笼罩 --v
设定的值。例如 my_module=2,foo*=3
将扭转所有my_module.*
和 foo*.*
源文件的代码的日志等级。
任何蕴含正斜杠或反斜杠的模式都将针对 整个路径名进行测试,而不仅仅是模块。例如 */foo/bar/*=2
会扭转 foo/bar
目录下源文件的所有代码的日志等级。
这个开关只有在 --enable-logging
也被传递时才起效:
--enable-logging