javascript - 在js中进行异步服务调用的最轻量级方法是什么?

标签 javascript jquery web-services

进行异步服务调用的最轻量级方法是什么?我的经理不想默认使用 jquery,因为它相当大,有 80k。异步调用必须在 ie8 中工作。用普通的 js 来做这件事有多难?或者是否有 jquery 的子集或其他一些经过验证的小型专用 js 库非常适合我正在寻找的内容?

最佳答案

这相当简单。您可以在此处使用此示例代码,但请注意。它无法扩展!异步编程很快就会变得非常复杂。如果您有 2 或 3 个混合的异步调用(在服务器上的数据级别发生干扰),您最好三思而后行。

您可能希望在客户端上有一个异步作业队列,以便调用仍然是异步的但按顺序执行。这最好通过 promise 来完成。

这是一个 AJAX 调用示例:

function send(data, callback)
{
  var xhr;

  xhr = new XMLHttpRequest();
  xhr.onreadystatechange = function () {
    if (xhr.readyState === 4 && xhttp.status === 200)
    {
        callback(xhr.responseText);
    }
  };

  xhr.open("GET", "http://..../route/to/your/service/port", true);
  xhr.send();
}

通过传递回调函数来使用它,如下所示:

send({ "hello": "world" }, function (response) {
  document.getElementById("response").innerText = response;
});

关于javascript - 在js中进行异步服务调用的最轻量级方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38577348/

相关文章:

javascript - 使用 Gulp 为所有 .html 页面生成关键 CSS

javascript - Jquery - .prev() 有问题

jquery - 禁用framework7动画

web-services - 如何在 Postman 中设置 HTTP 协议(protocol)版本?

c# - .Net - 在没有 WSDL 的情况下使用 Web 服务

javascript - 如何为具有不同 id 属性的多个表单概括文件上传 Web 表单的代码?

javascript - 状态变量在显示在页面上之前不存储 JSON 响应

java - HTTP组件、ReSTLet、Apache Mina和Netty的区别

javascript - Google map 正在更改 map 中心

javascript - 如何在 jquery 中切换 img 标签的 src