Reactjs React应用程序上的跨原点读取阻塞,但不是Laravel

Reactjs React应用程序上的跨原点读取阻塞,但不是Laravel,reactjs,laravel,fetch,cross-origin-read-blocking,Reactjs,Laravel,Fetch,Cross Origin Read Blocking,从传统Laravel应用迁移到React前端。使用Fetch调用API。它在laravel上工作(使用fopen和stream_get_内容来获取数据),所以我知道使用同一个localhost并不是服务器问题。但对于React,使用fetch从api获取数据,但会出现以下错误: 我已经将内容类型更改为application/json以匹配标头,但仍然没有任何内容。我的身体是空的。当我转到API链接时,我会得到一个xml文件,这样链接就可以工作,我可以在浏览器上看到它,但是我的react应用程序

从传统Laravel应用迁移到React前端。使用Fetch调用API。它在laravel上工作(使用fopen和stream_get_内容来获取数据),所以我知道使用同一个localhost并不是服务器问题。但对于React,使用fetch从api获取数据,但会出现以下错误:

我已经将内容类型更改为application/json以匹配标头,但仍然没有任何内容。我的身体是空的。当我转到API链接时,我会得到一个xml文件,这样链接就可以工作,我可以在浏览器上看到它,但是我的react应用程序没有保存响应主体信息

   apiCall = () => {
    const exampleAPILink = 'My_API_URL'
    const config = {
    method: 'GET',
    mode: 'no-cors',
    headers: {
    'Content-Type': 'application/json',
    }
   };
fetch(exampleAPILink, config).then(function(response){
  console.log(response.body);
  //null
}).catch(function(error){
  console.log(error);
});
}


*我需要“无cors”或将获得cors禁止访问错误。

无cors
表示您正在告诉fetch您不打算做任何需要cors许可的事情,并且它不应该要求它

问题是,您正在做一些需要CORS许可的事情。您正在尝试读取跨源响应

结果就是CORBs错误

您需要将模式更改为
cors
,并更改请求数据的服务器,以便授予权限


您正在发出GET请求。在其上设置
内容类型
标题是没有意义的。没有描述请求类型的请求正文

您可能会将
内容类型
接受
混淆

application/json
不是一种简单的内容类型,因此您不仅需要CORS权限才能读取响应,而且浏览器将首先发送飞行前请求以请求发送请求的权限


不要在GET请求上设置
内容类型
头。

@AndreGomes-这样就不能直接向其服务器发出Ajax请求。