0

尝试从我的 Javascript (React) 应用程序中访问 Pixabay api 时,我遇到了跨域读取阻止 (CORB)。

CORB 问题

这是我的获取代码:

fetch(`https://pixabay.com/api/?key=${API_KEY}&q=travel&image_type=photo&pretty=true`)
  .then(res => res.json())
  .then(
    result => {
      console.log(result);
      // set url array in state to be used by a gallery component..
    },
    error => {
      console.log(error);
    }
  );

fetch 可以很好地返回数据,但是在简单的 img 标签中使用的每个单独的图像 url 都会引发 CORB 错误。

我需要做什么才能取消阻止我的请求?

4

1 回答 1

1

我猜您正在使用指向 Pixabay 网站的链接作为您的图片的 src ( hit.pageURL)。你不是说要使用hit.previewURL吗?

const API_KEY = '123456789abcdef';

fetch(`https://pixabay.com/api/?key=${API_KEY}&q=travel&image_type=photo&pretty=true`)
  .then(res => res.json())
  .then(
    result => {
      // Just for the demo
      const html = result.hits.map(
        hit => `<a href="${hit.pageURL}"><img src="${hit.previewURL}"></a>`
      ).join('');
      document.body.innerHTML = html;
    },
    error => {
      console.log(error);
    }
  );
于 2020-02-22T14:34:50.433 回答