此问题已在此处有答案:
How to serve static files in Flask(24回答)
Create and download a CSV file from a Flask view(3个答案)
Return JSON response from Flask view(15个答案)
3年前关闭。
我刚刚开始使用Flask/Python。我想实现的是,我在HTML中有一个下载按钮,它调用以下函数:
function downloadPlotCSV() {
$.ajax({
url: "/getPlotCSV",
type: "post",
success: function(data) {
dataPlot = JSON.parse(data);
console.log(dataPlot);
}
});
}
不完整的 flask 代码为:
@app.route('/getPlotCSV', methods = ['POST'])
def plotCSV():
data = open("outputs/Adjacency.csv")
我面临的问题是,我无法找到一种方法来下载这个csv文件或返回它作为一个JSON字符串,所以我可以使用Javascript下载它。有什么想法,我可以发送它作为JSON或通过Flask本身下载它?什么是最好的方法?
3条答案
按热度按时间yuvru6vn1#
以下是一种不使用Javascript下载CSV文件的方法:
ddrv8njm2#
您可以使用
flask.send_file()
发送静态文件:在Flask 2.0之前,
download_name
被称为attachment_filename
。58wvjzkj3#
首先,你需要从flask
make_response
导入,这将生成你的响应并创建变量,比如response
。其次,使response.content_type = "text/csv"
第三-返回你的响应。