2014-10-19 81 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'})