当前位置: 首页 > 知识库问答 >
问题:

在react[duplicate]中使用fetch API时输入意外结束

施俊哲
2023-03-14

我使用fetch简单地从虚拟apiendpoint获取数据,但当我在fetch函数中添加配置时,我得到了一个意外的输入错误结束。

这工作得很好,控制台记录了200个项目的数组

componentDidMount() {
    let url = 'https://jsonplaceholder.typicode.com/todos';
    let config =  {
      method: "GET",
      mode: "no-cors",
      headers: {
        "access-control-allow-origin" : "*",
        "Content-type": "application/json; charset=UTF-8",
        "access-control-allow-headers": "content-type"
      }
    };


    fetch(url)
      .then(res => res.json())
      .then(data => this.setState({ data, }))

}

但当我将configs作为参数添加时,它会显示和错误。

componentDidMount() {
    let url = 'https://jsonplaceholder.typicode.com/todos';
    let config =  {
      method: "GET",
      mode: "no-cors",
      headers: {
        "access-control-allow-origin" : "*",
        "Content-type": "application/json; charset=UTF-8",
        "access-control-allow-headers": "content-type"
      }
    };


    fetch(url, config)   // This is where the error occurs
      .then(res => res.json())
      .then(data => this.setState({ data, }))

}

错误:

Dashboard.jsx:35 Uncaught (in promise) SyntaxError: Unexpected end of input
    at Dashboard.jsx:35

Cross-Origin Read Blocking (CORB) blocked cross-origin response https://jsonplaceholder.typicode.com/todos with MIME type application/json.

共有1个答案

漆雕奇逸
2023-03-14

首先,将模式:“无cors”更改为方式:“cors”

关于CORS问题

您需要在您试图请求信息的服务器上更新CORS头。这些CORS政策是出于安全目的而制定的

如果您可以访问它,请添加以下标题:

'Access-Control-Allow-Origin: *'

'Access-Control-Allow-Origin: http://example.com'

 类似资料:
  • 问题内容: 我正在使用fetch()从api服务器获取数据。我的错误如下所示: 你能告诉我我在做什么错。 问题答案: 一种用于响应请求到跨源资源具有“不透明”的响应类型。如果在尝试将响应转换为JSON之前记录响应,您将看到一种“不透明”的类型。 不透明类型被列为“严重受限”。 不透明的已过滤响应是已过滤的响应,其类型为“不透明”,URL列表为空列表,状态为0,状态消息为空字节序列,标头列表为空,主

  • 我使用fetch()从api服务器获取数据。我的错误是这样的: 你能告诉我我做错了什么吗。

  • 我正在尝试解析从Movie DB返回的JSON数据。我收到一个错误,告诉我我收到以下错误: MovieReq.Open('get','https://api.themoviedb.org/3/movie/299537?api_key=',false); 我还有其他XMLHttpRequests可以很好地返回JSON数据。这些请求使用API的discover函数。 这是产生问题的函数 {“成人”:f

  • 我试图读取字节数组的内容创建gzip一个对象,但是当我试图解压缩字节数组的内容我得到一个错误声明:java.io.EOFException:意外结束ZLIB输入流 我试图使用java的try with resources习惯用法来管理流资源,同时压缩和解压缩一个对象,但是如果我将ByteArrayOutputStream添加到try with resources块中,另一个流ObjectOutpu

  • 我试图创建一个nuxt项目使用npx create-nuxt-app和我有这个错误haw我可以解决它。 npm错误!在分析“”附近时JSON输入意外结束。。。THtwvnO2F9FWD7HrMJoGZ' npm错误!此运行的完整日志可在以下位置找到:npm ERR /home/ferdinand/。npm/_日志/2019-09-06T11_50_45_307Z-debug。日志 /home/fe

  • 我的代码非常简单。我正在尝试使用pdo_MySQL函数连接到MySQL实例。我认为这是一个语法错误,但我研究的几十个网站并不能帮助我识别它。下面是我的代码和网页上显示的内容。有人能告诉我一些方向吗? ***我试图插入一些网站,但应用程序不允许我。 pdo_mysql扩展已启用,并显示在phpinfo中。php。 启用FastCGI。 这是我的密码: 网页上的结果如下: