//web.view( WebView2 浏览器控件) - 启动参数 / 代理 import web.view; import win.ui; /*DSG{{*/ var winform = win.form(text="WebView2 - 设置启动参数";right=966;bottom=622) winform.add() /*}}*/ //创建浏览器,参数 @1 指定窗口或 custom 控件对象。 var wb = web.view(winform,{ extensions = true;//启用浏览器扩展,可用 wb.loadExtension() 函数加载扩展 //language = "zh-CN"; //自定义浏览器界面语言(影响 影响 Accept-Language 请求头 ),格式参考 sys.locale 库 startArguments = { /* 指定浏览器启动参数,兼容 string.args 支持的所有参数格式 , 自动合成浏览器启动命令行并按需添加引号、处理转义。 参数表中驼峰风格的参数名自动转为连字符格式并添加 -- 前缀。 仅仅是配置浏览器地址栏域名走代理是不够的,效果会更好。 改用 WebView2 + 代理,不开系统全局代理就可以实现 WebView2 内的连接全部走代理。 代理配置格式: doc://library-guide/std/inet/proxy.md https://chromium.googlesource.com/chromium/src/+/HEAD/net/docs/proxy.md 指定不同协议代理服务器应当以分号隔开, ",direct://"这里用逗号隔开仅用于隔开备选连接方式。 */ proxyServer = "SOCKS5://IP地址:端口,direct://"; acceptLang = "zh-CN";//Accept-Language 请求头,一般没必要改 userAgent = "Mozilla/5.0 (Linux; Android 13) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/115.0.5790.166" }; //自定义用户数据目录,每个不同的目录都可以创建独立会话。 userDataDir = ..io.appData("/aardio/webview2/user-data/" + ..io._exefile); /* 浏览器最低兼容版本,一般不必指定,不能低于 "86.0.616.0",否则不能启动。 关于 WebView2 发行版本: https://aka.ms/webviewrelease */ //compatibleBrowserVersion = "86.0.616.0"; }) //也可以用参数 @2 指定 userDataDir,参数 @3 开始指定浏览器启动参数,可传入一个参数表,或多个非 null 参数。 //var wb = web.view(winform,,"--proxy-server=SOCKS5://IP地址:端口 --accept-lang=zh-CN"); //禁用开发工具,在打开网页前设置才会生效 wb.enableDevTools(false); //WebView2(Chromium)启动参数大全请参考以下链接(可能有一些 WebView2 是不支持的 ): wb.go("https://peter.sh/experiments/chromium-command-line-switches/"); winform.show(3/*_SW_MAXIMIZE*/); win.loopMessage();