Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript React SyntaxError:JSON.parse:JSON数据第1行第1列的数据意外结束_Javascript_Reactjs_Fetch - Fatal编程技术网

Javascript React SyntaxError:JSON.parse:JSON数据第1行第1列的数据意外结束

Javascript React SyntaxError:JSON.parse:JSON数据第1行第1列的数据意外结束,javascript,reactjs,fetch,Javascript,Reactjs,Fetch,我正在尝试制作一个简单的wikipedia查看器应用程序。我检查了网络并尝试使用简单的获取功能,但此错误似乎持续存在。在获取中将模式设置为“无cors”并不能解决cors问题,它只会忽略这些问题。 根据WikipediaAPI文档,您可以在请求中添加“&origin=*”以发出未经验证的CORS请求 最后,您需要使用一个空的“data”对象启动状态,并且必须在渲染方法中对对象进行字符串化,因为在React渲染方法中不能将对象作为子对象 .您是否使用Postman之类的工具验证您的查询?你得到你期

我正在尝试制作一个简单的wikipedia查看器应用程序。我检查了网络并尝试使用简单的获取功能,但此错误似乎持续存在。

在获取中将模式设置为“无cors”并不能解决cors问题,它只会忽略这些问题。 根据WikipediaAPI文档,您可以在请求中添加“&origin=*”以发出未经验证的CORS请求

最后,您需要使用一个空的“data”对象启动状态,并且必须在渲染方法中对对象进行字符串化,因为在React渲染方法中不能将对象作为子对象


.

您是否使用Postman之类的工具验证您的查询?你得到你期望的原始数据了吗?它在邮递员中工作。是的,我自己测试过,谢谢。见下面我的完整答案。
    import React from 'react';


    class FetchData extends React.Component{
        state = {}

      setStateAsync(state) {
        return new Promise((resolve) => {
          this.setState(state, resolve)
        });
      }

      async componentDidMount() {
        const url="https://en.wikipedia.org/w/api.php?format=json&action=query&prop=extracts&exintro=&explaintext=&titles=Stack%20Overflow"
        const res = await fetch(url,{mode:'no-cors'})
        const data = await res.json()
        await this.setStateAsync({data:data})
      }

        render(){
            return (
              <div>
               {this.state.data}
              </div>
            );
        }
    }

export default FetchData