4

所有 Stack Exchange 站点都存在问题:即使使用 HTTPS 浏览 Stack Overflow,所有自定义头像也是通过 HTTP 获取的(尽管它们也可以通过 HTTPS 获得)。
该问题已作为重复而关闭,在最近的将来可能不会有任何行动,所以我想用 Greasemonkey 解决它。

我能够使用以下脚本替换图像的所有 URL:

var links = document.evaluate("//img[contains(@src, 'http://i.stack.imgur.com')]", document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); 
for (var i=0; i < links.snapshotLength; i++) 
{ 
    var thisLink = links.snapshotItem(i); 
    hisLink.src = thisLink.src.replace("http://i.stack.imgur.com/", "https://i.stack.imgur.com/");
} 

源 URL 被替换,但正如我在 Firebug 控制台中看到的那样,Firefox 首先通过 HTTP 获取它,然后通过 HTTPS 再次获取它们(并正确显示警告Loading mixed (insecure) display content on a secure page "http://i.stack.imgur.com/tKsDb.png")。

我的问题。是否可以在Firefox 获取页面之前使用 Greasemonkey 更改页面(图像的 URL) ?

4

0 回答 0