1.index编写代码,跳转下载页面
2.创建download界面
3.编写download路由
4.创建download函数
1).如果请求的方法是GET,imglist
变量存储从models.imgModel
模型中获取的所有对象,创建字典ctx,
使用render
函数来渲染download.htm
2).如果请求的方法是POST,获取要下载的文件名称,获取存放文件的目录
3).根据基目录和文件名,构造完整的文件路径,并使用`open`函数以二进制读取模式(`'rb'`)打开文件
4).创建一个HTTP响应对象。将打开的文件对象`inputsource`作为响应的主体,并将内容类型设置为`application/octet-stream`(表示下载的内容是文件流)
5).设置`Content-Disposition`响应头,告诉浏览器这是一个文件下载操作,并指定下载文件的名称。`escape_uri_path`函数用于对对路径编码格式化(中文不会乱码)
6).返回创建的HTTP响应对象,文件被下载到客户端