javascript - 从 $.ajax 到 javascript XMLHttpRequest 的端口?

标签 javascript jquery ajax

寻求一些帮助,使用 XMLHttpRequest 将以下内容从 jquery ajax 转换为 javascript?

$.ajax({
    url: 'api/dev/blah?id=4F',        
    type: 'GET',
    beforeSend: function(req) {
        req.setRequestHeader("Accept", "application/xml");
    },
    success: function (result) {
        alert('success');
        // Parse xml here...
    },
    error: function() { 
        alert('error');
}
});

我已经尝试过类似的东西,但我看不到 fiddler 发送的请求,暗示没有响应或错误(不是 xmlhttprequest 精明):

function junk() {
  var request = new XMLHttpRequest();
   request.addEventListener('load', successCallback, false);

   request.open("GET", 'api/dev/blah?id=4F', true);
   request.setRequestHeader("Accept","application/xml");
   request.setRequestHeader("Content-Type", "application/xml");
   request.send();
}

function successCallback(data) {
  alert('success');
}

最佳答案

来自 Eloquent JavaScript - chapter 14 :

function makeHttpObject() {
  try {return new XMLHttpRequest();}
  catch (error) {}
  try {return new ActiveXObject("Msxml2.XMLHTTP");}
  catch (error) {}
  try {return new ActiveXObject("Microsoft.XMLHTTP");}
  catch (error) {}

  throw new Error("Could not create HTTP request object.");
}

var request = makeHttpObject();
request.open("GET", "api/dev/blah?id=4F", true);
request.setRequestHeader("Accept", "application/xml");
request.setRequestHeader("Content-Type", "application/xml");
request.send(null);
request.onreadystatechange = function() {
    if (request.readyState==4 && request.status==200) {
        console.debug(request.responseText);
    }
};

关于javascript - 从 $.ajax 到 javascript XMLHttpRequest 的端口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11403369/

相关文章:

javascript - 任何人都知道使用键盘滚动时触发的鼠标悬停技巧/替代方法

javascript - 如何检测在 javascript 中按下 x 秒的键?

javascript - 调用 API 时 Ajax success() 不起作用

渲染前显示的 Javascript 代码

java - 如何将java数组复制到javascript数组?

asp.net - 奇怪的 Javascript JSON 未定义错误

javascript - 如何在 typescript 中获取 "this"的范围

javascript - jQuery 中的 Json 关联数组访问

javascript - 鼠标移动背景跟随 Y 但不是 X 轴

html - 为什么 AJAX 而不是 iFrame?