是否有一个 Google Chrome 开关(命令行)可以切换 url 编码?

是否有一个 Google Chrome 开关(命令行)可以切换 url 编码?

我编写了一个 C# 代码,用于调用 Google Chrome 在计算机本地硬盘上加载特定 URL。C# 代码已经对 URL 进行了编码(用 %20 替换空格字符),并且这在几周前一直运行良好,直到这个问题开始发生!

最快的解决办法似乎是修改 C# 代码,不要用 %20 替换“”。但 Chrome 的行为将来可能会发生变化,或者某些客户可能没有安装相同版本的 Chrome。

我认为可持续的解决方案是告诉 Chrome 对 URL 进行编码或不编码。现在我的问题是:

Chrome 是否有一个开关可以强制其翻译 URL 或忽略它?

它有这个设置或选项吗?

我找到了几个带有 Chrome 开关的列表这里这里。然而,这两个列表都不完整,并且引用了此引用似乎不起作用!

提前致谢。

答案1

最可能的原因是您传递给 Chrome 的地址中缺少协议。

我假设您正在传递本地文件路径,例如C:\mypath\something%20here.html

Chrome(正确地!)断言这是一个本地路径,并转义了应该在 URL 中保护的字符(因为%是文件名的有效字符)。

恰当的方式可以是:

  • 给 Chrome 一个带空格的普通文件路径,让它对需要编码的内容进行编码
  • 给出一个正确的 URL,其中所有内容都应该已经编码 - 本地 URL 的协议是file://

C:\my path\my file.html因此,在这两种情况下都应该起作用:

  • C:\my path\my file.html
  • file:///C:/my%20path/my%20file.html
  • file://c:\my%20path\my%20file.html(Chrome 将转换为上述格式)

相关内容