我现在在 jQuery 中进行同步 AJAX 调用。父函数有什么方法可以在保持异步调用的同时返回 Ajax 响应。我能找到的唯一解决方案是使用回调函数。我真的不想编写回调函数,因为我打算将此对象放入变量中。
例如
var ajax = serviceinterface.rawServiceCall(“http://user.myservice.com/endpoint”, “post”, {name : “xyz”});
我可能也想这样使用它
$.when(serviceinterface.rawServiceCall(endpoint1, “get”), serviceinterface.rawSCACall(endpoint2, ‘get’)).done(function(){
// do something here
});
这是我的函数代码,同步调用工作得很好,但我想进行异步调用。
rawServiceCall : function(endpoint, type, payload) {
type = typeof type !== 'undefined' ? type : "get";
payload = typeof type !== 'undefined' ? payload : null;
return $.ajax({
url : endpoint,
type : type,
data : payload,
async : false,
dataType : 'json',
headers: {
accept : "application/json"
},
success : function(data){
return data;
}
});
}
PS - 我不想浪费 CPU 周期或让网页的其他部分等待它首先加载。或者有什么更好的方法呢?