我正在尝试向我的Bottle服务器发送JSON帖子。
from bottle import request, route, run
@route('/feedback', method='POST')
def feedback():
data = request.json
print data
run(host='localhost',port=8080)
在客户端,我有
$('#user_feedback').submit(function() {
var feedback = {"id": 1}
$.ajax({
type: "POST",
url: "http://localhost:8080/feedback",
data: feedback
});
return false;
});
我在这里返回false,因为我不希望页面被重定向。
但是,打印出来时,我在Bottle服务器中收到的data
始终为None
。
请帮忙。谢谢。
答案 0 :(得分:2)
request.json
期望请求的内容类型为application/json
。
为了使其有效,您应该将请求的contentType
属性设置为application/json
并对您的数据进行字符串化:
$.ajax({
type:"POST",
contentType: "application/json",
url:"/feedback",
data: JSON.stringify(feedback)
});