Angular/Flask http post 不起作用,数据未发送
Angular/Flask http post doesn't work, data hasn't been sent
似乎 http post 没有将数据发送到服务器。我想我忘记了什么,但看不到什么。
这是我的服务
passChosenSymtom(symptoms:any){
console.log(symptoms)
const lol={symptoms: symptoms}//consider lol={'x':[0,1]}
console.log(JSON.stringify(lol))
return this.http.post(this.resultatSymptoms2,JSON.stringify(lol))
}
组件
getResult(){
this.symps.passChosenSymtom(this.allDisease).subscribe({
next: (obj) => this.assignmentForResult(obj),
error: (e) => console.error(e),
complete: () => console.info('complete')
}
)
}
服务器
@app.route('/zaebal',methods =['POST'])
def dont_even_work():
print(request)
print(request.form)#I recieve this dict ImmutableMultiDict([])
print(request.args)
#I have to resend response to dont get a internal error which says server didnt return anything
response =jsonify({
'predicted_disease': 'fake'
})
response.headers.add('Access-Control-Allow-Origin', '*')
return response
我发现了我的问题。
如果有人遇到同样的问题,我会在这里写下我的解决方案。
所以,来自客户端(Angular)的 Http 请求发送 Json 格式 data.But 服务器(Flask)接收另一种格式(Flask 的特定格式)的数据,所以在收到请求后你应该使用 request.get_json()
从 request.And 得到 json 不要在客户端使用 Json.stringify 没用。
似乎 http post 没有将数据发送到服务器。我想我忘记了什么,但看不到什么。
这是我的服务
passChosenSymtom(symptoms:any){
console.log(symptoms)
const lol={symptoms: symptoms}//consider lol={'x':[0,1]}
console.log(JSON.stringify(lol))
return this.http.post(this.resultatSymptoms2,JSON.stringify(lol))
}
组件
getResult(){
this.symps.passChosenSymtom(this.allDisease).subscribe({
next: (obj) => this.assignmentForResult(obj),
error: (e) => console.error(e),
complete: () => console.info('complete')
}
)
}
服务器
@app.route('/zaebal',methods =['POST'])
def dont_even_work():
print(request)
print(request.form)#I recieve this dict ImmutableMultiDict([])
print(request.args)
#I have to resend response to dont get a internal error which says server didnt return anything
response =jsonify({
'predicted_disease': 'fake'
})
response.headers.add('Access-Control-Allow-Origin', '*')
return response
我发现了我的问题。
如果有人遇到同样的问题,我会在这里写下我的解决方案。
所以,来自客户端(Angular)的 Http 请求发送 Json 格式 data.But 服务器(Flask)接收另一种格式(Flask 的特定格式)的数据,所以在收到请求后你应该使用 request.get_json()
从 request.And 得到 json 不要在客户端使用 Json.stringify 没用。