我的应用正在从客户端的 Google 联系人 API 中获取用户的所有 Google 联系人。这通常会产生 1 - 2000 个不同的 JSON 对象。收到这些后,我的应用程序会遍历它们,重新格式化每个联系人对象,然后尝试通过 POST 请求将重新格式化的联系人对象保存到我的数据库中。这样做的结果是在客户端触发了大量(1 - 2000)个 AJAX 调用,但在 5-10 个之后它们就停止了。处理所有这些 AJAX 请求或一次保存如此大量数据的最佳方法是什么?
这是我当前代码的摘要版本:
// gContacts.length = 722
$(gContacts).each(function(index, contact) {
// Reformat each contact object to fit into my database
var newContact = {}
newContact.title = // String
newContact.emails = // Object featuring different emails
newContact.phone_numbers = // Object featuring different phonenumbers
// Save to Database via Backbone
var newContact = new App.Collections.Contacts()
newContact.create({
title : newContact.title,
emails : newContact.emails,
phone_numbers : newContact.phone_numbers
}, {
success: function (response) {
},
error: function (model, xhr) {
var errors = $.parseJSON(xhr.responseText).errors
console.log(errors)
}
}) // End .save
}); // End of .each()