javascript - 从 Wikipedia api 的 Fetch blob 中获取响应数据

标签 javascript fetch wikipedia-api

我正在尝试使用 Wikipedia 的 api 进行 fetch。

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))

返回

enter image description here

由于 736,我不确定如何深入了解这一点。我猜那里什么也没有?这些结果意味着什么?

我做了这些循环,看看它们是否允许我通过单击控制台获得一些我无法获得的东西。它与上面的 fetch 调用相同,所以并不是很有用。只是想表明我至少尝试过一些东西(否决票控制)。

fetch(endpoint)
    .then(blob => blob.json())
    .then((data) => {
    for(var i in data){
     //returns batch complete ,
      //& query
      for(var j in data.query){ 
         //returns pages
        for(var k in data.query.pages){
        //returns the string 736
        }
      }
  }
  })

除了单击上面的控制台结果之外什么也不做。

最佳答案

使用 formatversion=2 获得稍微更舒适的格式(其中 data.query.pages 是一个数组)。

或者,您可以使用类似的方法迭代对象

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

在现代浏览器中,您还可以使用 Object.values()获取数组中对象的属性。

关于javascript - 从 Wikipedia api 的 Fetch blob 中获取响应数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47945294/

相关文章:

javascript - 在 Rails 中呈现 Javascript 时遇到问题

javascript - JavaScript fetch()无法捕获404错误

php - PDO fetchAll 不返回所有行

javascript - 将 JSONP 与 AJAX 结合使用

php - 在 PHP 中解析维基百科标记的最佳方法是什么?

JavaScript 对象引用

javascript - 调整图像大小使其适合特定大小的 Canvas 并保持纵横比

namespaces - 如何获取 MediaWiki namespace 列表?

javascript - 从匿名函数中中断 for 循环

javascript - fetch:将项目推送到数组