此函数在 Chrome 和 Firefox 上有效,但在 IE9 上无效,其中 errorHandler 正在记录此错误消息:
ERROR: getFriendsArray {"readyState":0,"status":0,"statusText":"No Transport"}
getUserAccessToken() 正在返回正确的值。任何想法可能是什么,只影响IE?
编辑:似乎直接在 IE 浏览器上的https://graph.facebook.com/me/friends返回 HTTP 400 错误。
function getFriendsArray() {
var friendsArray = [];
$.ajax({
url: 'https://graph.facebook.com/me/friends',
data: {
access_token: getUserAccessToken(),
fields: 'name,picture,gender'
},
dataType: 'json',
cache: true,
async: false,
success: function(response) {
var data = '';
$.each(response.data, function(indice, item) {
friendsArray.push(item);
});
},
error: function(err) {
errorHandler('getFriendsArray', JSON.stringify(err));
}
});
return friendsArray.sort(sortByName);
}