2016-08-08 49 views
-2

Ich ziehe 'POST' Daten mit einem Ajax-Skript und ich bevölke eine Tabelle mit den JSON-Daten. Derzeit stoße ich auf das Problem, dass ich nur 500 Datensätze gleichzeitig extrahieren kann. Wie kann ich mehr extrahieren? Oder gibt es eine Möglichkeit, eine Funktion zu erstellen, die die Daten in Seiten einfügt? Oder kann ich mehr Daten mit einer Last mehr ziehen und dann Daten entfernen, wenn ich sie nicht brauche?Wie extrahiert man mehr als 500 Datensätze mit Ajax aus einer Datenbank

Code:

function populateTable(){  //populates the project list with active projects 

var reqBody1 = { "filters":{ "and": [] }} 
var $orgName = $('#orgName'); 


$.ajax({   
type: 'POST', 
url: "https://myWebsite.com/path/to/data", 
contentType: 'application/json', 
data: JSON.stringify(reqBody1), 
success: function(res){ 

    for (i=0; i <records.total ; i++){ 

     $orgName.append('<tr><td>' + res.records[i].field_1364364 + '</td></tr>'); 
      } 
     } 
}); 
} 

Fehler: Network output on google chrome

+0

Vielleicht paginiert Ihre Datenquelle ihre Ergebnisse für große Datenmengen? Abhängig von Ihrer Situation, wenn eine bestimmte Suche mehr als ein Ergebnislimit zurückgibt, können diese Grenze und eine Eigenschaft, die die Gesamtzahl der Ergebnisse darstellt, zurückgegeben werden. APIs, die diesen Ansatz verwenden, werden normalerweise von einer Logik begleitet, die es einem ermöglicht, einen Offset auszuwählen, und dann eine zweite Anforderung für die verbleibenden Ergebnisse ab diesem Offset senden. – SimianAngel

+0

Hmm, 'mehr als 500 Datensätze 'Fehler, wenn das Ergebnis nur 130 Datensätze ist? Das ist ein Fehler in der API und Sie müssen den Autor dieser API bitten, ihn zu beheben. –

Antwort

1

Das „Mehr als 500 Datensätze können nicht auf einmal extrahiert werden“ warnt Sie sehen durch die API zurückgegeben wird mit der Sie interagieren. Es ist nicht AJAX inhärent.

Sie müssen in der Dokumentation zu dieser API nachsehen, ob es eine Problemumgehung gibt. Achten Sie insbesondere auf die Option "Offset" oder "Überspringen". Wenn die Ergebnisse sortiert sind, können Sie die Suche auf Ergebnisse beschränken, die unterhalb der zuletzt abgerufenen Ergebnisse liegen.

+0

Hallo, habe ich einen Offset-Wert, wie kann ich es nutzen, um mehr Daten zu extrahieren? Ich möchte wirklich wissen, wie man Seiten zu den JSON-Daten macht, die ich extrahiere. Danke für die Hilfe! – GoldenEagle

+0

Lesen Sie die Dokumentation für die von Ihnen verwendete API. – duskwuff