Google chrome extension 如何对chrome的其余部分隐藏WebRequest重定向?

Google chrome extension 如何对chrome的其余部分隐藏WebRequest重定向?,google-chrome-extension,Google Chrome Extension,我正在尝试使用chrome的实验性WebRequestURI来进行资源转换,这样URL就可以链接到不同的后端资源,而不是表面上的资源。在Firefox中,我习惯于注册新的协议处理程序,以便: myscheme:user_prefs 实际上已连接到某些Web服务器,如下所示: https://myhost/prefs?token=bla 我有点迷路了,有没有办法在Chrome上做类似的事情呢?我想你可以使用WebRequestAPI(确保你在Beta频道或更高版本上): …这是完全未经测试的代

我正在尝试使用chrome的实验性WebRequestURI来进行资源转换,这样URL就可以链接到不同的后端资源,而不是表面上的资源。在Firefox中,我习惯于注册新的协议处理程序,以便:

myscheme:user_prefs
实际上已连接到某些Web服务器,如下所示:

https://myhost/prefs?token=bla

我有点迷路了,有没有办法在Chrome上做类似的事情呢?

我想你可以使用WebRequestAPI(确保你在Beta频道或更高版本上):


…这是完全未经测试的代码。请随意测试、调试、修复,无论什么。。。但请记住,您需要请求一些权限:
“webRequest”、“webRequestBlocking”、“有一些HTML5API。我想。但我不知道它是否有效。这看起来不错,我们确实做到了——我的问题更多的是对前端用户隐藏这些webrequests。当我这样做时,url会显示在url栏中。有没有办法改变这种情况?您可以尝试使用navigator.registerProtocolHandler API,但这对我来说并不一致,需要您对用户唠叨。我甚至不知道它是否能满足您的需求——因此,如果它不起作用,我想不出除了编写一个NPAPI插件之外还有什么别的办法。我从来没有听说过registerProtocolHandler——它是用于插件还是用于整个浏览器?我得绕着它玩(你有什么最喜欢的资源吗?)。另外,我也看过NPAPI插件,但它们的设计似乎只是为了在一个页面中为一个正方形的屏幕生成内容,有什么办法吗?你可以把NPAPI插件隐藏起来,它们可以在客户端的计算机上做一些事情。我对他们没有多少经验。实际上,没有一种资源适合registerProtocolHandler——我想,只是用谷歌搜索一下。再说一次,它对我不起作用,所以你可能应该试着找到另一种方法来完成你想要完成的事情。我只能找到关于创建类似flash的插件(基本上是在某个地方渲染)的信息。我在哪里可以找到有关NPAPI插件更改其嵌入的浏览器的资源加载行为的信息?我可以看到如何发出请求,但看不到如何从客户端拦截请求。此外,由于它们通常托管在自己的进程中,因此似乎不可能通过将我自己的代码注入到所讨论的浏览器中来实现。有什么想法吗?
chrome.webRequest.onBeforeRequest.addListener(function(details) {
  if (details.url.indexOf("myscheme")!=0)
    return;
  var options = details.url.substr(details.url.indexof(":"));
  return { redirectUrl: "https://myhost/prefs?" + options };
},{},["blocking"]);