当前位置: 首页 > 知识库问答 >
问题:

对本地文件系统的AJAX请求在Chrome中不工作?[副本]

夏侯林
2023-03-14

跨源请求只支持协议方案:http、data、chrome、chrome-extension、https、Chrome-Extension-Resource。

下面是我的jQuery代码,它可以在Firefox上运行,但不能在Google Chrome上运行:

$.ajax({
    url: 'file:///home/satendra/dndExamples/avisDnD/file.xml',
    success: function(xml) {
        $(xml).find('Tab').each(function() {
            var id = $(this).attr('URL');
            var tab = $(this).attr('TabName');
            $("ul").append("<li><a href="+ id +">"+ tab +"</li>");
        });
    }
});

共有1个答案

寇坚成
2023-03-14

Firefox允许该请求,因为它接受对本地文件系统(即file:/协议)的请求,如果它们也来自本地文件系统。但是,Chrome拒绝对文件:/URL的所有XMLHttpRequest。

请注意,您不能在两种浏览器中从外部域向本地文件系统发出AJAX请求-如果可以的话,这将是一个巨大的安全缺陷。

要使这个AJAX请求在Chrome中工作,您需要向Web服务器发出请求。如果您在Windows上,您可以轻松地在本地计算机上安装IIS或WAMP。

 类似资料:
  • 问题内容: 我正在努力使用jQuery从XML动态创建UI。我的jQuery在Firefox中可以使用,但在Chrome中不能使用。它给了我这个控制台错误: 跨源请求仅支持以下协议方案:http,数据,chrome,chrome扩展名,https,chrome-extension-resource。 以下是我的jQuery代码,该代码可在Firefox上运行,但不能在Google chrome上运

  • 试图理解如何将post请求发送到我的后端(flask)。 在我的HTML中,我有3个复选框和一个提交按钮。我的submit按钮返回一个javascript数组,我正在尝试将该javascript数组发送到apiendpoint'api/regions',您可以在下面看到。 在我的app.py中,我有一个endpointAPI的路由: 归档。“C:\test.txt” 当我尝试这样做的时候,我得到的

  • 我想通过AJAX请求检索我的本地JSON文件数据。当我在Chrome中启动html时,它产生了错误: XMLHttpRequest无法加载。跨源请求仅支持以下协议方案:超文本传输协议、数据、chrome、chrome-扩展、https、chrome-扩展-资源。 以下是我的代码: 如果我添加<code>数据类型:“jsonp”,则 它返回我错误函数。

  • 在简单的我的表单,我想使用ajax与和获取和发布请求后,使用和提交表单我的页面是刷新和警报不工作的控制器验证。 控制器中的简单请求ajax无法正常工作 我的形式: 我的控制器: 我的路线:

  • 问题内容: 我有一个网页,可通过Ajax处理机器的远程控制。当用户离开页面时,我想自动与机器断开连接。所以这是代码: 断开连接功能只是将HTTP GET请求发送到PHP服务器端脚本,该脚本完成了断开连接的实际工作: 在FireFox中可以正常工作。但是使用Chrome,根本不会发送ajax请求。有一个不可接受的解决方法:向回调函数添加警报: 添加警报呼叫后,请求将成功发送。但是正如您所看到的,这根

  • 我有一个用户界面,我需要在Chrome中工作。Chrome不允许用户打开本地页面。有没有办法让它在chrome中使用JavaScript工作?我需要做什么?我没有访问任何Chrome设置的权限。