return
我使用Instagram API提取了几个帐户的关注者数量,但现在我需要总结一下这些数量并且我遇到了一些问题。考虑到ajax调用,我应该怎么做呢?
答案 0 :(得分:1)
使用promises
(在您使用jQuery.when
的情况下)成功完成两个ajax请求后,您可以执行单个函数。
jQuery.when
提供了一种基于一个或多个对象执行回调函数的方法,通常是表示异步事件的Deferred对象。
例如:
$.when($.ajax( "http://example1.com" ), $.ajax( "http://example2.com" ))
.done( function successCallback(responseFromAjax1, reponseFromAjax2) {
// Success code goes here ...
});
在你的情况下,它将是:
$.when(
$.ajax({
url: "https://api.instagram.com/v1/users/xxxxxxxxx",
dataType: 'jsonp',
type: 'GET',
data: { access_token: accessToken },
}),
$.ajax({
url: "https://api.instagram.com/v1/users/xxxxxxxxx",
dataType: 'jsonp',
type: 'GET',
data: { access_token: accessToken },
})
).done(function (response1, response2) {
// If you have troubles getting the actual data
// put a breakpoint here to examine the structure of the responses
var followers_one = response1[0].data.data.counts.followed_by;
var followers_two = response2[0].data.data.counts.followed_by;
alert(followers_one + followers_two);
});