136 lines
4.3 KiB
Markdown
136 lines
4.3 KiB
Markdown
# 支持的 Chrome 命令行开关
|
||
|
||
> Electron 支持的命令行开关。
|
||
|
||
你可以在 [app][app] 模块的 [ready][ready] 事件发出之前使用 [app.commandLine.appendSwitch][append-switch] 来添加它们到你应用的 main 脚本里面:
|
||
|
||
```javascript
|
||
const {app} = require('electron')
|
||
app.commandLine.appendSwitch('remote-debugging-port', '8315')
|
||
app.commandLine.appendSwitch('host-rules', 'MAP * 127.0.0.1')
|
||
|
||
app.on('ready', () => {
|
||
// Your code here
|
||
})
|
||
```
|
||
|
||
## --client-certificate=`path`
|
||
|
||
设置客户端的证书文件 `path` .
|
||
|
||
## --ignore-connections-limit=`domains`
|
||
|
||
忽略用 `,` 分隔的 `domains` 列表的连接限制.
|
||
|
||
## --disable-http-cache
|
||
|
||
禁止请求 HTTP 时使用磁盘缓存.
|
||
|
||
## --remote-debugging-port=`port`
|
||
|
||
在指定的 `端口` 通过 HTTP 开启远程调试.
|
||
|
||
## --js-flags=`flags`
|
||
|
||
指定引擎过渡到 JS 引擎.
|
||
|
||
在启动Electron时,如果你想在主进程中激活 `flags` ,它将被转换.
|
||
|
||
```bash
|
||
$ electron --js-flags="--harmony_proxies --harmony_collections" your-app
|
||
```
|
||
|
||
## --proxy-server=`address:port`
|
||
|
||
使用一个特定的代理服务器,它将比系统设置的优先级更高.这个开关只有在使用 HTTP 协议时有效,它包含 HTTPS 和 WebSocket 请求. 值得注意的是,不是所有的代理服务器都支持 HTTPS 和 WebSocket 请求.
|
||
|
||
## --proxy-bypass-list=`hosts`
|
||
|
||
让 Electron 使用(原文:bypass) 提供的以 semi-colon 分隔的hosts列表的代理服务器.这个开关只有在使用 `--proxy-server` 时有效.
|
||
|
||
例如:
|
||
|
||
```javascript
|
||
app.commandLine.appendSwitch('proxy-bypass-list', '<local>;*.google.com;*foo.com;1.2.3.4:5678')
|
||
```
|
||
|
||
|
||
将会为所有的hosts使用代理服务器,除了本地地址 (`localhost`,
|
||
`127.0.0.1` etc.), `google.com` 子域, 以 `foo.com` 结尾的hosts,和所有类似 `1.2.3.4:5678`的.
|
||
|
||
## --proxy-pac-url=`url`
|
||
|
||
在指定的 `url` 上使用 PAC 脚本.
|
||
|
||
## --no-proxy-server
|
||
|
||
不使用代理服务并且总是使用直接连接.忽略所有的合理代理标志.
|
||
|
||
## --host-rules=`rules`
|
||
|
||
一个逗号分隔的 `rule` 列表来控制主机名如何映射.
|
||
|
||
例如:
|
||
|
||
* `MAP * 127.0.0.1` 强制所有主机名映射到 127.0.0.1
|
||
* `MAP *.google.com proxy` 强制所有 google.com 子域 使用 "proxy".
|
||
* `MAP test.com [::1]:77` 强制 "test.com" 使用 IPv6 回环地址. 也强制使用端口 77.
|
||
* `MAP * baz, EXCLUDE www.google.com` 重新全部映射到 "baz", 除了
|
||
"www.google.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插件版本号.
|
||
|
||
## --log-net-log=`path`
|
||
|
||
使网络日志事件能够被读写到 `path`.
|
||
|
||
## --disable-renderer-backgrounding
|
||
|
||
防止 Chromium 降低隐藏的渲染进程优先级.
|
||
|
||
这个标志对所有渲染进程全局有效,如果你只想在一个窗口中禁止使用,你可以采用 hack 方法[playing silent audio][play-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 levels 来覆盖 `--v` 给的值.E.g. `my_module=2,foo*=3` 会改变所有源文件 `my_module.*` and `foo*.*` 的代码中的 logging level .
|
||
|
||
任何包含向前的(forward slash)或者向后的(backward slash)模式将被测试用于阻止整个路径名,并且不仅是E.g模块.`*/foo/bar/*=2` 将会改变所有在 `foo/bar` 下的源文件代码中的 logging level .
|
||
|
||
这个开关只有在 `--enable-logging` 开启时有效.
|
||
|
||
[app]: app.md
|
||
[append-switch]: app.md#appcommandlineappendswitchswitch-value
|
||
[ready]: app.md#event-ready
|
||
[play-silent-audio]: https://github.com/atom/atom/pull/9485/files
|
||
[debugging-main-process]: ../tutorial/debugging-main-process.md
|
||
[node-cli]: https://nodejs.org/api/cli.html
|