Question

Je suis en train de remplir une page avec des entrées X de mon alimentation tumblr, et je me demande comment je ne peux tirer que X de l'objet JSON il retourne.

Voici mon code, tiré d'un autre poste de débordement de pile et modifié:

//Tumblr retrieval
$.getJSON("http://tumblr-address/api/read/json?callback=?", 
  function(data) {
    $.each(data.posts, function(i,posts){
      var title = this["regular-title"]; 
      var type = this.type; 
      var date = this.date; 
      var url = this["url-with-slug"];

      $('#sideRail ol').prepend('<li><p><a href=' +url +'>' + title + '</a></p><p>' + date + '</p></li>'); 
    });
 });

J'ai essayé d'utiliser une boucle while avec un compteur, mais il répète tout temps tout X avant de passer à l'élément suivant dans la liste.

Merci pour toute aide.

Était-ce utile?

La solution

Utilisez la méthode Array.slice sur le réseau de poste. Par exemple, pour récupérer 10 objets:

$.getJSON("http://tumblr-address/api/read/json?callback=?", 
  function(data) {
    $.each(data.posts.slice(0, 10), function(i,posts){
      // ...

Autres conseils

Vous pouvez utiliser le paramètre de requête num:

$.getJSON("http://tumblr-address/api/read/json?num=20", ...

Et je ne pense pas que vous avez besoin d'avoir un paramètre callback vide. Vous ne faites JSONP.

ancien poste, mais les mises à jour d'informations ne peux pas mal ... oui l'ancien api a permis num = paramètre pour spécifier un l8imit aux articles retournés, la nouvelle version de 2 Api utilise « limit = » au lieu. mais par défaut à 20 si omis.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top