我尝试使用以下代码发送数据:
let data = new FormData();
data.append("username", userName);
console.log(data)
var fetchOptions = {
method: 'POST',
headers: {
"Accept": "application/json",
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
'mode': 'no-cors',
'cache': 'no-cache'
},
body: data
}
fetch(url, fetchOptions)
.then((response) => {
if (response.ok) {
responseJson = response.json();
console.log(responseJson, response.status);
if (response.status == 200) {
alert('success!');
this.state.code = false;
}
}
})
.catch((error) => {
console.error(error);
});
在烧瓶中我收到了这些数据
username = request.form['username']
return jsonify({'data': 'Code received!'})
但是这没用。它返回console.log(responseJson, response.status);
Promise {
"_40": 0,
"_55": null,
"_65": 0,
"_72": null,
} 200
知道为什么会这样吗?
答案 0 :(得分:2)
response.json()返回一个promise,应该被解析。
请参阅https://developer.mozilla.org/en-US/docs/Web/API/Body/json
如果你做.then(response => response.json()).then(json => console.log(json))
,你应该看到你想看到的内容