2014-10-19 79 views
0

我有一個JSON字符串,我正在從Web窗體中讀取,我想創建一個臨時文件並允許將文件下載到本地客戶端計算機。換句話說我app.route讀取字符串,字符串寫入一個文件,然後將該文件發送到客戶端:瓶頸:客戶端如何下載創建的JSON文件

什麼,使這項工作的最佳方式是什麼?

+1

爲什麼你需要寫文件,如果它是暫時的?假設提交表單,並且它符合你的路線,我認爲你可以打印JSON並設置HTTP頭文件來下載文件而不是顯示它。我認爲'Content-Disposition'標題? – Gohn67 2014-10-19 21:13:36

+1

這裏是一個例子(儘管它使用PHP):http://stackoverflow.com/questions/11545661/php-force-download-json – Gohn67 2014-10-19 21:17:20

+0

的確,你可以,謝謝你讓我走在正確的軌道上。 – camdenl 2014-10-19 21:32:03

回答

1

this回答所有需要的是指定正確的響應頭:

@app.route('/sendFile', methods=['POST']) 
def sendFile(): 
    content = str(request.form['jsonval']) 
    return Response(content, 
      mimetype='application/json', 
      headers={'Content-Disposition':'attachment;filename=zones.geojson'})