📅  最后修改于: 2023-12-03 15:37:55.065000             🧑  作者: Mango
当我们使用Python Flask构建应用程序时,有时需要从URL获取JSON数据,以供应用程序进一步处理。本文将介绍如何使用Javascript从URL使用Python Flask获取JSON数据。
首先,在Python Flask中创建路由,该路由将返回JSON数据。以下是一个示例路由。
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/data')
def get_data():
data = {
'name': 'John Doe',
'age': 24,
'city': 'New York'
}
return jsonify(data)
在此示例中,我们定义了一个名为get_data
的路由,它返回一个JSON格式的数据。使用jsonify
函数将Python字典转换为JSON数据。
使用Javascript从路由中获取JSON数据,可以使用XMLHttpRequest
对象。以下是一个示例代码片段。
var xhr = new XMLHttpRequest();
xhr.open('GET', '/data');
xhr.onload = function() {
if (xhr.status === 200) {
var data = JSON.parse(xhr.responseText);
console.log(data);
}
else {
console.log('Request failed. Returned status of ' + xhr.status);
}
};
xhr.send();
open
方法创建一个GET请求,该请求将通过URL/data
发送到服务器。onload
回调函数,该回调函数在数据加载成功后被调用。onload
回调函数中,我们通过XMLHttpRequest.responseText
获取JSON数据,并使用JSON.parse
函数将其转换为Javascript对象。console.log
将获取的数据打印到控制台中。以下是使用Javascript从URL使用Python Flask获取JSON数据的完整示例代码。
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/data')
def get_data():
data = {
'name': 'John Doe',
'age': 24,
'city': 'New York'
}
return jsonify(data)
if __name__ == '__main__':
app.run()
var xhr = new XMLHttpRequest();
xhr.open('GET', '/data');
xhr.onload = function() {
if (xhr.status === 200) {
var data = JSON.parse(xhr.responseText);
console.log(data);
}
else {
console.log('Request failed. Returned status of ' + xhr.status);
}
};
xhr.send();
本文介绍了如何从URL使用Javascript获取Python Flask应用程序返回的JSON数据。使用XMLHttpRequest对象可以轻松地从路由获取JSON数据,并在Javascript中进一步处理它们。