我正在尝试将数据添加到数据库中。执行我的提取方法后,我收到以下错误
未捕获(承诺)SyntaxError:JSON输入Promise意外结束。然后(异步)
我尝试重新配置Promise,但是不确定我是否正确执行了此操作。
addNewBeer() {
fetch("https://beer.fluentcloud.com/v1/beer/", {
body: "{\"name\":\"\",\"likes\":\"\"}",//input beer name and like amount ex "{\"name\":\"Michelob Ultra\",\"likes\":\"-5\"}"
headers: {
"Content-Type": "application/json"
},
method: "POST"
})
.then(response => response.json())
.then(responseJson => {
this.setState({
isLoaded: true,
dataSource: this.state.dataSource + responseJson,
});
})
}
答案 0 :(得分:1)
当您收到的响应不是JSON时,会发生此错误Uncaught (in promise) SyntaxError: Unexpected end of JSON input Promise.then (async)
。错误发生在这一部分:
.then(response => response.json())
如果省略该部分,则会看到res
不是JSON,可能不是字符串。
您可以尝试进行console.log
来查看响应,然后在问题中提供答案。