2012-08-08 2 views
0

트위터의 검색 결과에서 URL을 가져 오려고하지만 배열에 정의되지 않았습니다. 누군가가 왜 URL을받지 못하는지 알고 있습니까?트위터의 검색 결과에서 URL 값을 가져 오려고 시도했습니다.

function get(){ 
    var array=[]; 
     $.getJSON("http://search.twitter.com/search.json?q=euronews&rpp=5& 
     include_entities=true&result_type=mixed&callback=?", 
     function(data){ 
    $.each(data.results, function(i, item){ 
     var user=item.from_user; 
     var user_id=item.from_user_id; 
     var date=item.created_at; 
     var profile_img=item.profile_image_url; 
     var url=item.entities.urls[0].url; 
    create_array(user,user_id,date,profile_img,url); 
    }); 

    function create_array(a,b,c,d,e){ 
     array.push({user:a,user_id:b,date:c,profile_img:d,url:e}); 

        }console.log(array); 
}); 
} 

이 내가 트위터 검색 결과에서 얻을 JSON 파일의 구조 : item.entities.urls는이 때문에 http://search.twitter.com/search.json?q=euronews&rpp=5&include_entities=true&result_type=mixed

건배 :))

답변

1

당신이 undefined을 받고 그 이유는 정렬. 모든 결과에 배열이있는 것은 아닙니다. 이것은 당신을 위해 작동합니다 :

var array = []; 

$.getJSON("http://search.twitter.com/search.json?q=euronews&rpp=5&include_entities=true&result_type=mixed&callback=?", 
    function(data){ 
     $.each(data.results, function(i, item){ 
      array.push({ 
       user: item.from_user, 
       user_id: item.from_user_id, 
       date: item.created_at, 
       profile_img: item.profile_image_url, 
       url: (item.entities.urls.length > 0 ? item.entities.urls[0].url : '') 
      }); 
     }); 
     console.log(array); 
    } 
); 
+0

지금 무엇입니까 형식 오류 : item.entities.urls [1] 배열에 하나의 값이 –

+0

을 정의되지 않는다, item.entities.urls [1] 정의되지 않은 수 있도록. 내가하는 일을 볼 수 있도록 주요 질문에 편집 코드를 게시하십시오. –

+0

위의 코멘트에 코드를 삽입해야합니다.보실 수 있습니까? 편집에 감사드립니다. 이 수정 사항은 동료 검토가 완료 될 때까지만 볼 수 있습니다. –

관련 문제