进行异步服务调用的最轻量级方法是什么?我的经理不想默认使用 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/