Javascript Ajax获取请求混淆
我对javascript/ajax/flask非常陌生,正在尝试从我的flask服务器获取数据。我正在呈现client.html模板,需要从/data路径获取数据Javascript Ajax获取请求混淆,javascript,python,ajax,flask,Javascript,Python,Ajax,Flask,我对javascript/ajax/flask非常陌生,正在尝试从我的flask服务器获取数据。我正在呈现client.html模板,需要从/data路径获取数据 app = Flask(__name__) @app.route("/data", methods=["GET"]) def submit_handler(): return 10 #example value @app.route('/client') def page(): return render_temp
app = Flask(__name__)
@app.route("/data", methods=["GET"])
def submit_handler():
return 10 #example value
@app.route('/client')
def page():
return render_template('client.html')
if __name__ == '__main__':
app.run()
在client.html中:
var output = $.ajax({
url: "/data",
type: "GET",
})
window.alert(output)
窗口警报输出:
[object Object]
为什么这个输出不是10?很抱歉,如果这个问题太简单,但是类似的搜索并没有帮助我理解数据请求。简单地尝试一下
$.get( "/data", function(data, success){
window.alert(data)
})
编辑:
原因
在Flask中,视图必须返回以下内容之一:
- 一串
- 响应对象(或子类)
- (字符串、状态、标题)或(字符串、状态)的元组
- 有效的WSGI应用程序
$.get( "/data", function(data, success){
window.alert(data)
})
编辑:
原因
在Flask中,视图必须返回以下内容之一:
- 一串
- 响应对象(或子类)
- (字符串、状态、标题)或(字符串、状态)的元组
- 有效的WSGI应用程序
$.ajax({
url: "/data",
type: "GET",
datatype : "text",
success: function(output){
console.log(output);
}
})
或者,通过检查开发人员工具中的响应来检查返回的对象的类型。使用F12在浏览器中打开开发人员工具,您可以在其中看到返回的响应。试试这个
$.ajax({
url: "/data",
type: "GET",
datatype : "text",
success: function(output){
console.log(output);
}
})
或者,通过检查开发人员工具中的响应来检查返回的对象的类型。使用F12在浏览器中打开开发人员工具,您可以在其中看到返回的响应。我得到一个“get/data HTTP 1.1/”500错误。尝试
返回“10”
。也尝试应用程序运行(debug=True)
在开发中我得到一个“get/data HTTP 1.1/”500错误。尝试返回“10”
。还尝试应用程序运行(debug=True)
在开发中,作为附带说明,我建议使用浏览器控制台而不是警报进行调试。对于基本用法,可以通过console.log()
(其本身已经提供了远远不止一个警报)完成此操作,但还有许多其他实用程序……它返回一个python Int对象。你想完成什么?您最好将json
返回到ajax
调用。要做到这一点,请从flask导入jsonify,然后在另一个注释上返回jsonify({'number':10}),如果您试图学习flask,本教程非常好,涵盖了很多内容-谢谢,我将查看它。作为附带说明,我建议您使用浏览器控制台而不是警报进行调试。对于基本用法,可以通过console.log()
(其本身已经提供了远远不止一个警报)完成此操作,但还有许多其他实用程序……它返回一个python Int对象。你想完成什么?您最好将json
返回到ajax
调用。要做到这一点,请从flask导入jsonify,然后在另一个注意事项上返回jsonify({'number':10}),如果您试图学习flask,本教程非常好,涵盖了很多内容-谢谢,我们将查看它。