前端和后端下载文件思路

前端思路(基于Vue-cli3)

这种情况属于本地下载,适合模版文件等静态文件下载。
将需要下载的文件放在public文件下,设置a标签如下。

  a(:href="`${path}template.xlsx`" download='模版.xlsx' ) 下载模版
  # href属性数文件在项目的路径,文件必需英文名,download属性设置下载本地时的文件名称,可以中文。
  path:process.env.BASE_URL,

参考:https://cli.vuejs.org/zh/guide/html-and-static-assets.html#public-文件夹

后端思路(基于flask)

这种情况适合各种类型文件,
首先前端的a标签指定下载的路径
然后后端返回文件流
from flask import Flask, send_from_directory

  app = Flask(__name__)
  
  @app.route("/download")
  def index():
      return send_from_directory(r"./template.xlsx",filename="123.xlsx",as_attachment=True)
  
   if __name__ == '__main__':
      print(app.url_map)
      app.run(host="localhost", port=5000)
posted @ 2020-06-02 18:15  Barry东东和西西  阅读(971)  评论(0编辑  收藏  举报