我编写了一个 javascript,它向我的http ://localhost/fileread.php 请求文本,并将响应放入带有https :// 连接 ( https://translate.google.com/
) 的网站中的文本区域。由于我将一些内容从http网站转移到https网站,由于混合内容政策,firefox 不允许我这样做。所以我关闭了security.mixed_content.block_active_content
to false
in的位about:config
。现在普通的 Firefox 只是给出一个警告,并允许我将内容复制到该文本区域中。
但出于安全原因,我想在我的Firefox 开发者版中使用这个脚本。我也这样做,并允许 about:config 中的混合内容。但是从我的本地主机获取内容的 ajax 请求失败。这是代码片段:
function getFileContent(name){
$.ajax({
type: "post",
url: "http://localhost/fileread.php",
crossDomain: false,
data: {"file":name},
beforeSend: function(){},
success: function(responseData, textStatus, jqXHR) {
document.getElementById('textarea').innerHTML = responseData;
//document.getElementById("gt-submit").click();
DownloadFile(name);
},
error: function(jqXHR, textStatus, errorThrown) {
console.log("Ajax request failed");
console.log(errorThrown);
}
});
}
它在普通的 Firefox 中工作,但在开发人员版本中失败,errorThrown = undefined。我不知道这是 jQuery 问题还是混合内容的问题。如何让它在开发者版中工作?
PS : 该脚本在普通版和开发者版的http网站 ( ) 上运行良好。http://www.bing.com/translator
此外,在这种情况下,将 Web 服务器设置为使用https是一种有效的解决方案,但我尝试过,但失败了。所以这不是我的选择。