Axios从API获取数据-React.js

时间:2019-02-03 17:48:36

标签: reactjs axios

我正在使用axios从API中获取数据,我试图做一些非常简单的事情,而我之前已经做过。 我可以在控制台上看到我的请求已发出,但是我无法输出数据或console.log()消息。

componentDidMount() {
    axios.get("https://dog-api.kinduff.com/api/facts")
    .then( response => {
        console.log("Facts: ")
        this.setState({DogFact:response.data})
    })
    .catch( err => {
        this.setState({error:err.data.message})
    })
}

api的响应是带有数组的对象。

{facts["fact written here"]}

应该非常简单,但是如果我尝试这样做:

axios.get("https://dog-api.kinduff.com/api/facts")
.then( response => {
    console.log("Facts: ", response) //This wont show up on the console
    this.setState({DogFact:response.facts[0]}) //This wont work.
})

我不太了解可能出什么问题。 有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

将此行添加到package.json

"proxy": "https://dog-api.kinduff.com/api/"

然后在axios调用中将其更改为:

axios.get("/facts")
.then( response => {
    console.log("Facts: ", response) 
    this.setState({DogFact:response.facts[0]})
});