我能够从服务器获取请求,但是无法动态发布请求。我正在使用输入值,但显示以下错误:
错误:语法错误:“ JSON.parse:JSON数据第1行第1列的意外字符”
foo_timer_windows.c
我们将不胜感激。
答案 0 :(得分:1)
我刚刚更改并从顶部删除const input = {tweet: {body: ''}};
并将其写入handleSubmit
函数,只需在下面进行检查即可:-
handleSubmit(e){
e.preventDefault()
const input = {tweet: {body: this.state.value}};
fetch(url, {
method: 'POST',
body: JSON.stringify(input),
headers:{
'Content-Type': 'application/json'
}
}).then(res => res.json())
.then(response => console.log('Success:', JSON.stringify(response)))
.catch(error => console.error('Error:', error));
}
答案 1 :(得分:0)
handleSubmit(e) {
fetch("http://some domain/api/tweets", { /*your object...*/ })
.then(res => res.text()) // previous .then(res => res.json())
.then(text => console.log(text))
...
}
在此位置,res.json()
调用似乎是错误的,因为您的响应可能不是有效的JSON对象。也许改为尝试res.text()
,然后console.log
来回答,看看它告诉你什么。
有关响应对象的更多信息,您可以在这里找到:MDN - Response Object