我有以下Python Flask路由器:
@app.route('/create', methods=['GET', 'POST'])
@crossdomain(origin='*')
def create():
if request.method == 'POST':
print(request.form)
title = request.form['title']
url = request.form['url']
new_mark = Mark(
title=title,
url=url
)
new_mark.save()
return new_mark
当我进行ajax调用(下面)时,它会响应400错误。
$.ajax({
type: 'POST',
url: 'http://localhost:5000/create',
data: {
'title': sender.title,
'url': sender.url
},
xhrFields: {
withCredentials: true
},
dataType: 'json'
});
当我尝试打印request
时,它会打印一个空的immutableMultiDict
。知道为什么给它400以及为什么没有数据?
答案 0 :(得分:1)
您的ajax调用正在发送json编码的数据。我想你应该解码。
import json
data = json.loads(request.data)
print data.get("title")
答案 1 :(得分:0)
我很蠢。我实际上并没有发送任何数据,因为sender.url和sender.title没有包含任何值-_-。