在Flask中反序列化来自多部分帖子请求的文件

时间:2016-07-31 17:49:24

标签: python html file flask

在我的HTML中,我有以下代码:

<form action="editprojects" method="post" enctype="multipart/form-data">

    <input type="file" name="pdf"/><br>
    <input type="submit" name="submit" value="Submit"/>

</form>

现在我的Flask中有端点:

@app.route('/editprojects',methods=['GET','POST'])
def editProjects():

    pdf = request.files['pdf']

    with open('mypdf.pdf', 'wb') as f:
        f.write(pdf)

所有文件似乎都已损坏且大约52个字节,因此必须有一些内容。我尝试转换为String,尝试wwb,我也看到了must be convertible to a buffer not FileStorage等错误。

有什么想法吗?感谢。

1 个答案:

答案 0 :(得分:0)

正如@IsmailRBOUH所说,这解决了我的问题:

pdf.save(path, filename) // path is optional

这是因为request.files提供的是文件而不是字符串或字节,因此您只需保存文件即可。