从网页链接到 chrome://url [英] Link to chrome:// url from a webpage

查看:27
本文介绍了从网页链接到 chrome://url的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

更新

chrome://about/ 有到 chrome://settings 和其他的直接链接,所以它可以做到.

chrome://about/ has direct links to chrome://settings and others, so it can be done.

如何链接/重定向到网页中的 chrome:// 网址?例如,chrome://settings.尝试单击指向 chrome:// 网址的链接时,

How can I link/redirect to a chrome:// URL in a webpage? For example, chrome://settings. When attempting to click a link to a chrome:// URL,

<a href="chrome://settings">link</a>

我在控制台中收到错误消息:

I get an error in the console:

Not allowed to load local resource: chrome://settings/

根据这个答案,有可能:

According to this answer, it is possible:

从扩展链接到 chrome://chrome/extensions选项页面

我试过这个脚本:

<a href="#" id="test">test</a>
<script>
document.addEventListener('DOMContentLoaded', function () {
    document.getElementById('test').addEventListener('click', function () {
        chrome.tabs.update({
            url: 'chrome://chrome/extensions'
        });
    });
});
</script>

还有这个:

<a href="#" onclick="chrome.tabs.create({url:'chrome://settings/clearBrowserData'});">click me</a>

两者都不起作用.除此之外,我还尝试过:

Neither works. In addition to those, I've tried:

  • Linking to it using <a href="chrome://newtab">
  • Redirect the user using window.location.

但是,我相信可能有一个 JavaScript 解决方法.当用户按下链接时,是否可以将 URL 更改为 chrome://settings?用户必须在之后按 Enter,但这似乎是我得到的最好的方法.

However, I believe there may be a JavaScript workaround. When the user presses a link, is it possible to change the URL to chrome://settings? The user would have to press Enter after, but this seems like the best I'd get.

推荐答案

不,没有办法从网页上做到这一点.

Nope, there is no way to do it from a webpage.

chrome:// 是一个特权来源,任何打开它的尝试都将导致重定向到 about:blank.

chrome:// is a privileged origin, and any attempt to open it will result in a redirect to about:blank.

Chrome 这样做是为了减少攻击面:即使只是打开那些网址应该是无害的,但最好不要让网站和外部程序尝试.

Chrome does that to reduce the attack surface: even though just opening those URLs should be harmless, it's better not to allow websites and external programs to even try.

此外,它也不是那么无害,例如调试 URL 像 chrome://crashchrome://hang(小心,那些真的做你期望的).

Besides, it's not that harmless, e.g. debug URLs like chrome://crash, chrome://hang (careful, those really do what you expect).

显然,您不能使用 chrome.tabs,因为它是一个未向网站公开的扩展 API.但是,它能够打开特权来源.

Obviously, you can't use chrome.tabs as it's an extension API not exposed to websites. It is, however, capable of opening privileged origins.

这篇关于从网页链接到 chrome://url的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆