1

是否有开发工具或 Chrome / Firefox 扩展程序可以让您用我自己的自定义内容替换特定 URL 的内容?

我不是在寻找一个简单的 /etc/hosts 文件更改,因为我想替换一个 URL,而不仅仅是一个域。

4

2 回答 2

3

在 Chrome 扩展程序中,webRequestAPI 可用于将 URL 重定向到不同的 URL。这个其他 URL 可以是另一个在线页面,也可以是您的 Chrome 扩展程序中的一个页面。
API的一个简单示例webRequest以及其他选项的列表可以在这个答案中找到。

注意:如果您只想在特定页面上添加/更改某些内容,内容脚本可能更合适。然后,您可以通过标准 DOM 方法更改特定页面的内容。

在 Firefox 中,您可以使用Addon SDKpage-mod的模块来实现 Content 脚本。

于 2012-12-18T14:35:19.510 回答
1

chrome.tab API将允许您对窗口中的选项卡进行任何相关更改。

参考:

a) 选项卡 API

b) 基本 Chrome 扩展架构。

您可以参考此示例扩展,将当前选项卡中的所有 URL 更改为Google.co.in

清单.json

这是我们注册所有 chrome 扩展内容的核心文件,确保它具有所有权限。

{
"name":"Tabs Demo",
"description":"This Demonstrates Demo of Tabs",
"browser_action":{
"default_icon":"screen.png",
"default_popup":"popup.html"
},
"permissions":["tabs"],
"manifest_version":2,
"version":"1"
}

popup.html

引用 JS 文件以传递 CSP 的普通 HTML 文件。

<!doctype html>
<html>
<head>
<script src="popup.js"></script>
</head>
<body>
</body>
</html>

popup.js

function tabsfunction() {
    //fetching all tabs in window
    chrome.tabs.getAllInWindow(function (tabs) {
        // Iterating through tabs
        for (tab in tabs) {
            //Updating each tab URL to custom url 
            chrome.tabs.update(tabs[tab].id, {
                "url": /*You can place any URL you want here*/
                "https://www.google.co.in/"
            }, function () {
                //Call back
                console.log("Completed");
            });
        }
    });
}
//Binging a function on document events 
document.addEventListener("DOMContentLoaded", tabsfunction);

如果您需要更多信息,请与我们联系。

于 2012-12-18T11:47:12.617 回答