XMLHttpRequest 可以有参数吗?

在寻找解决 CORS 问题的方法时,我看到许多示例都建议在 XMLHttpRequest 的构造函数中放置一个属性“mozSystem”设置为 true 的对象,以便发出请求而不会出现同源问题政策。


我已经试过了,但它不起作用。


我在一台计算机上有一个 Web 应用程序,在另一台计算机上有一个带有未经验证的证书的 https 服务器,我向该服务器发送请求以填充我的 Web 应用程序上的表格。我向我的服务器发送请求,以便以 json 的形式获取一组对象,但由于请求不是以相同的来源发送的,因此它失败了。我试图在 XMLHttpRequest 的构造函数中放置一个属性“mozSystem”设置为 true 的对象,但我的 IDE 告诉我构造函数不接受参数,但在我看到的示例中,该对象被作为参数放置构造函数。当我将该对象作为参数保留然后调试代码时,它显示属性“mozSystem”为假,因此这意味着它不起作用。


这是我如何从服务器检索数组的示例:


var array=[];

function getArray(){

var request= new XMLHttpRequest({mozSystem: true});

request.onreadystatechange=function(){

        if(request.readyState===4&&request.status===200){

            array=JSON.parse(request.responseText);

        }

    };

request.open('GET',urlOfTheServer,false);

request.send(null);

}

所以我需要知道将那个对象放在构造函数中是否有什么不同,或者是否有任何其他方法不会从相同的源策略中获取错误。


猛跑小猪
浏览 168回答 1
1回答

牛魔王的故事

Firefox 16 向构造函数添加了非标准参数你的IDE称,它不带参数,因为标准的实施不会。mozSystem 仅用于“特权应用程序”,这是一种安装在 Web 浏览器中运行的应用程序的过时方式。您不能使用客户端 JavaScript 使浏览器忽略证书的信任问题。它们只能通过以下方式解决:用没有这些信任问题的证书替换证书浏览器用户访问 URL(作为视口的主 URL,而不是通过(例如)XMLHttpRequest 加载的 URL)并单击一系列警告屏幕以关闭它计算机的浏览器用户/管理员在计算机上安装适当的证书,以便在本地而不是全局解决信任问题
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript