2017-12-22 1 views
0

가져 오기와 함께 Wikipedia의 API를 사용하려고합니다.Wikipedia API에서 가져온 BLOB에서 응답 데이터 가져 오기

const endpoint = 'https://en.wikipedia.org/w/api.php? 
action=query&format=json&origin=*&titles=Albert%20Einstein' 

fetch(endpoint) 
      .then(blob => blob.json()) 
      .then(data => console.log(data)) 

RETURNS

enter image description here

나는 인해 그 736에,이 드릴 다운하는 방법을 모르겠어요. 거기에 아무것도 없다고 가정합니까? 이 결과는 무엇을 의미합니까?

나는이 루프를 사용하여 콘솔에서 클릭 할 수없는 것을 허용했는지 확인했습니다. 위와 같은 fetch 호출과 동일하므로 유용하지 않습니다. 단지 내가 적어도 무언가를 시도했다는 것을 보여주고 싶었다. (downvote control).

콘솔 결과를 클릭하는 것 이상의 결과는 없습니다.

답변

1

좀 더 편한 형식 (data.query.pages은 배열 임)으로는 formatversion=2을 사용하십시오.

또는, 당신은 최신 브라우저에서

var pages = data.query.pages; 
for (pageId in pages) { 
    if (pages.hasOwnProperty(pageId)) { 
     console.log(pages[pageId]); 
    } 
} 

같은 것을 사용하여 객체를 반복 할 수 있습니다 당신은 또한 배열에있는 개체의 속성을 얻을 수 Object.values()를 사용할 수 있습니다.

+0

응답 데이터가 매우 작은 개체였으며 이것이 오류라고 생각하도록 오도합니다. 그럼에도 불구하고'data.query.pages'를 파고 배열하는 방법에 대한 조언은 매우 유용했습니다. 가져 오기 요청에서 데이터를 가져올 수있는 유일한 방법이었습니다. ''VAR 결과 = []를 페치 (엔드 포인트) 그 때는 BLOB (=> blob.json()) 그 때는 ((데이터) => { VAR 페이지 = data.query.pages pages.forEach (i => results.push (i)) } console.log (결과)''' –

관련 문제