0
我嘗試從JavaScript發送json數據到flaskapp。但JavaScript發送的json數據不被容器接受,請求爲空,哪裏出錯?爲什麼我的燒瓶應用程序無法從JavaScript恢復json?
這是我的燒瓶代碼。
@main.route('/getjson', methods = ['GET', 'POST'])
def getjson():
a = request.json
return jsonify(user = a)
這是我的javascript代碼。
$(function(){
$("#test").click(function(){
$.ajax({
url: "{{ url_for('main.getjson') }}",
type: "POST",
data: JSON.stringify({
"n1": "test1",
"n2": "test2",
"n3": "test3"
}),
dataType: "json",
success: function(data){
var a = data.user
var texthtml = "<p>" + a + "</p>"
$("#result").html(texthtml)
}
});
});
});
頁面上返回的數據始終爲空。 Request.arg.get也不起作用。
不要字符串化,只發送實際的對象作爲'數據:'。我猜'Request.arg [s] .get'「不起作用」,因爲你發送了一個POST請求 –
@ChrisG如果你想發送JSON,你絕對想要將數據串聯起來。他們只是缺少內容類型。 – davidism
@davidism刪除'JSON.stringify'會自動將content-type設置爲'application/json'(並將對象字符串化) –