我通过javascript抓取请求

时间:2017-03-15 03:21:20

标签: javascript json request response fetch

所以这就是我的问题,我在从网址获取数据时遇到问题,然后通过我页面上的列表显示该数据。

这里是我的网址:

http://ign-apis.herokuapp.com/articles

我想访问第三个属性,"数据"

这是我的代码:

HTML

<h1>Articles</h1>
<ul id = "articles"></ul>

JAVASCRIPT

const ign_ul = document.getElementById('articles');
const ign_url = 'http://ign-apis.herokuapp.com/articles?startIndex=30\u0026count=5';

fetch(ign_url)
 .then(function(response) { 
   return response.json();
})
 .then(function(json) {  
    let articles = json.data;
    return articles.map(function(article) {
      let li = createNode('li'),
          img = createNode('img'),
          span = createNode('span');
      img.src = article.thumbnails[0].url; //dont think this is right...
      span.innerHTML = `${article.metadata.headline}`;
      append(li, img);
      append(li, span);
      append(ign_ul, li);
    })
  })
  .catch(function(error) {
    console.log(error);
  });  

它不断记录错误&#34; [object Error] {}&#34; 没有数据显示

我对此网址采用了相同的方法:

https://randomuser.me/api/?results=10

使用

let articles = json.results;

我能够很好地获取信息

我在获取,获取,发布等方面是新手。 我认为可能是网址数据格式不正确无法成功转换为json。

非常感谢任何帮助,非常感谢。

[编辑]

这是我遇到的错误

Fetch API无法加载http://ign-apis.herokuapp.com/articles?startIndex=30&count=5。 No&#39; Access-Control-Allow-Origin&#39;标头出现在请求的资源上。起源&#39; http://s.codepen.io&#39;因此不允许访问。如果不透明的回复符合您的需求,请将请求的模式设置为“无人”状态。在禁用CORS的情况下获取资源。

0 个答案:

没有答案