javascript - 有没有办法避免 axios 中的 linkpreview.net 出现 CORS 错误,就像 Angular 中的 trustAsResourceUrl() 一样?

标签 javascript api reactjs cors axios

我正在尝试实现 linkpreview.net我的reactJS应用程序中使用axios的API,但它给了我以下CORS错误

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://api.linkpreview.net/?callback=JSON_CALLBACK&q=abc.xyz&key='my key here'. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).

这是我的 axios 代码

axios({
          method:'post',
          url:"http://api.linkpreview.net/?callback=JSON_CALLBACK&q="+res+"&key="+UserSetting.fetchUrlKey,
          headers: {'Access-Control-Allow-Origin': '*'},
          data: data
      })
      .then(response => {
        console.log(response);

      })
      .catch((error) => {
        console.log(error);
      })

如果我做错了什么,请告诉我!!

最佳答案

出于某种原因,Axios 不会提供对 jsonp 请求的支持,这里提到:https://github.com/mzabriskie/axios/pull/15

此外,他还使用 npm 包 jsonpjsonp 提供了另一个配方

所以,你可以尝试一下并使用类似的东西:

var j = require('jsonp');

j('http://api.linkpreview.net/?key=123456&q=https://www.google.com', function (err, data) {
  if (err) {
    console.error(err.message);
  } else {
    console.log(data);
  }
});

关于javascript - 有没有办法避免 axios 中的 linkpreview.net 出现 CORS 错误,就像 Angular 中的 trustAsResourceUrl() 一样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44963122/

相关文章:

javascript - 如何避免 Firebase/Cloud Firestore 中的重复数据

api - 如何在Json ld上下文中重命名@id-API平台[已解决]

android - 如何在其他调用正在运行时以编程方式合并调用(电话 session )

javascript - React - 如何从 useState 中的后端 API 获取初始值?

javascript - 在 Material ui 中为扩展面板提供事件颜色

Javascript 制作测验单选按钮

javascript - 当我使用 Apollo 时,对象数组转换为对象的对象

reactjs - 我希望箭头图标在每次状态变化时上下翻转。并且我想为其设置动画

javascript - 在React功能组件中,在鼠标悬停时加载react-bootstrap的下拉数据,而不是在鼠标单击时加载?

javascript - repl Node js问题SyntaxError : Unexpected identifier