2017-07-25 7 views
0

apiから人データをロードしようとしています:www.swapi.co。 しかし、私は映画のタイトルをロードする方法を知りません 代わりにそのAPIのアドレス。json配列をロードするには

$(function(){ 

var list = $('.list'); 
var submit = $('.submit-people'); 
var people = '1'; 

submit.on('click',function(){ 
    people++; 
    list.empty(); 

    $.ajax({ 

     type: 'GET', 
     url: 'https://swapi.co/api/people/' + people + '/', 

     success: function(data) { 

      list.append('<li>Name:' + data.name + '</li>'); 
      list.append('<li>Height:' + data.height + '</li>'); 
      list.append('<li>Mass:' + data.mass + '</li>'); 
      list.append('<li>Gender:' + data.gender + '</li>'); 
      list.append('<li>Movies:' + data.films + '</li>'); 

     } 

    }) 

}) 

私の現在のコードはここにある:https://jsfiddle.net/wtpy71d7/2/

本当に任意のヘルプや提案

+0

'data.films 'の各映画について、詳細(映画のタイトルなど)を取得するために別のクエリ(別の' $ .ajax')を実行する必要があります。これはREST APIの共通の機能です。 –

+0

お返事ありがとう、本当に助かりました – Mindfuc

答えて

1

これはあなたを助けるかもしれません。

success: function(data) { 
    ... 
    for(var i = 0; i< data.films.length; i++) 
      $.ajax({ 
      type: "get", 
      url: data.films[i], 

      success: function (data) { 
       list.append('<li>Movies:' + data.title + '</li>'); 
      } 
      }); 
    } 
} 
+0

ええ、それは助けになる、私は今それを得る!ありがとう – Mindfuc

0

に感謝、彼らはあなたに別のAPIリクエストのURLを与えているように見えます。 あなたができることは、別のAJAX呼び出しを行い、それぞれのムービーの詳細を取得し、その結果を解析してリストに追加することです。このように見えるかもしれません。

list.append('<li>Movies:' + getMovies(data.films) + '</li>'); 

あなたの次のAJAX呼び出しは次のようになります:

var getMovies = function(moviesAPI) { 

$.ajax({ 
    type: 'GET', 
    url: moviesAPI, 
    success: function(data) { 
    return data; 
    } 
}) 

} 
関連する問題