首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NetworkError:未能在“XMLHttpRequest”上执行“发送”

NetworkError:未能在“XMLHttpRequest”上执行“发送”
EN

Stack Overflow用户
提问于 2015-10-01 02:41:30
回答 5查看 127.4K关注 0票数 22

我试图向本地托管在我的笔记本电脑上的服务器发送ajax请求,但我似乎无法获得任何信息。当我单击站点(localhost)上的一个按钮时,我可以看到服务器传回正确的信息,但是在前端我得到了以下错误:

错误: NetworkError:未能在‘XMLHttpRequest’上执行'send‘:未能加载'http://comp-ip’。

代码语言:javascript
复制
var param = JSON.stringify({varA:"varA",varB:"varB"});

$.ajax({
  type: "POST", 
  url: "http://comp-ip",
  async: false, 
  data: param,
  success: function(result, status, xhr){
    alert(result + ": " + status);
  },
  error: function(xhr, status, err) {
    alert(status + ": " + err);
  }
});

它似乎每次都会触发一个错误,而不是“成功”。有人知道怎么回事吗?

编辑:我尝试过在没有AJAX的情况下发送一个普通的POST请求,它还抛出了一个“未定义的”错误:

代码语言:javascript
复制
$(document).ready(function(){
    var param = JSON.stringify({varA:"varA",varB:"varB"});
     $("#btn").click(function(event){
           $.post( 
              "http://ip",
               param,
               function(data) {
                 $('#container').html(data);
               }
           ).fail(function(error) { alert(error.responseJSON) });
        });
});

我尝试过的其他事情: 1)将浏览器更改为Safari (同样的事情,服务器返回信息,但站点得到了一个错误),2)设置异步= true,from false。由于某些原因,当我将其设置为true时,服务器根本没有响应。如果是假的,服务器就会做出响应。

EN

回答 5

Stack Overflow用户

发布于 2015-10-01 02:47:44

几分钟前我确实遇到了这个问题。问题是您需要将async:false设置为async:true。我不清楚为什么会这样做,我猜是因为HTML5比XML新。

这个站点上的错误有点不同,但我认为它类似:JavaScript console.log导致错误:“不推荐主线程上的同步XMLHttpRequest .”

更新

嗨,我带着一些新的和改进的信息回来了。交叉原点与端口以及域/ in一起出现,并且很可能在大多数优秀的浏览器中都会出现。如果您想知道正在发生什么,请尝试将IP更改为localhost,反之亦然(如果您正在使用localhost)。请记住,当您使用不同的端口时,可能会发生此问题。为了进行快速修复,请确保后端服务器的头文件中有正确的访问控制头response.addHeader("Access-Control-Allow-Origin", "*");

代码来自于这个问题

票数 16
EN

Stack Overflow用户

发布于 2015-10-01 08:17:09

这是一个跨源资源问题(CORS)。我的服务器正在向我返回正确的信息,但我的浏览器拒绝接受。为了解决这个问题,我必须在我的java服务器(不是我的站点)上添加2行代码,将它们设置为响应头

代码语言:javascript
复制
yourownvariable.setHeader("Access-Control-Allow-Origin:", "origin url of your site");
yourownvariable.setHeader("Access-Control-Allow-Methods", "GET, POST,PUT");
票数 5
EN

Stack Overflow用户

发布于 2019-09-20 10:10:57

我也有同样的问题,有相同的错误信息。在我的示例中,这是由服务器使用特征-策略设置sync-xhr: none头造成的。删除此指令解决了问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32878613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档