前端axios将从flask传输过来的文件保存到本地
时间: 2023-10-19 16:09:54 浏览: 98
1. 在前端使用axios发送请求,将文件上传到flask服务器。
2. 在flask服务器中,使用request.files获取文件对象,然后使用save方法将文件保存到指定路径。
```
from flask import Flask, request
app = Flask(__name__)
@app.route('/upload', methods=['POST'])
def upload():
file = request.files['file']
file.save('/path/to/save/file')
return 'File uploaded successfully!'
```
3. 在前端中,可以使用axios的responseType设置为blob,获取到服务器返回的文件流。
```
axios({
url: '/upload',
method: 'post',
data: formData,
responseType: 'blob'
}).then(response => {
const url = window.URL.createObjectURL(new Blob([response.data]));
const link = document.createElement('a');
link.href = url;
link.setAttribute('download', 'file.pdf');
document.body.appendChild(link);
link.click();
})
```
4. 点击下载按钮后,会触发下载事件,将文件下载到本地。
阅读全文