【发布时间】:2020-08-20 22:12:09
【问题描述】:
我很困惑为什么我的 Flask 调用 JSON 数据没有被 ajax 成功等待语句读取,该语句在其他地方运行良好。我意识到 Success: 语句应该等待数据返回并且确实如此,但是返回的数据不能作为任何 JSON 访问。没有控制台或浏览器控制台错误表明数据被视为“无效”的原因
烧瓶功能
@blueprint.route('/target_liner')
def target_liner():
ind_id = int(request.args.get('ind_id'))
label = "1508 Loss Correction"
data = '[{"Program_Name":"' + label + '"}]'
return data
JSON 数据
[{"Program_Name":"1508 Loss Correction"}] //这是确认合法的JSON
Javascript
function updates() {
$.ajax({
url: "/target_line",
method: "GET",
data: {
ind_id: 1508
},
success: function (data) {
console.log(data);
alert(data); // This shows the JSON string correctly in Chrome Inspect console
alert(data.Program_Name);
alert(data[0]['Program_Name']);
alert(data[0].Program_Name );
}
});
};
updates();
【问题讨论】:
-
您的
data是一个字符串。它没有被解析成一个对象。尝试将dataType: "json",添加到您的$.ajax({})通话中。 -
立即解决了问题。我以前试过这个,但一个不相关的问题让我把它删除了——谢谢 Rocket! @RocketHazmat
标签: javascript jquery json ajax flask