Python - flask and werkzeug - Keep Give "BadRequestKeyError: 400 Bad Request: KeyError: 'file'"



我第一次尝试用python上传文件,我尝试使用flask和werkzeug库,这是我的代码:

在这里,我正在创建上传文件的函数:

@app.route('/upload')
def upload_file():
    return render_template('load.html')
@app.route('/uploader', methods=['GET','POST'])
@login_required(must=[be_admin, have_approval])
def uploaderV():
    if request.method == 'POST':
       file = request.files['file']
       if file:
          filename = secure_filename(file.filename)
          file.save(os.path.join(app.config['UPLOAD_FOLDER'],filename))
          return 'file uploaded'
    return render_template('load.html')

比这是我的负载.html页面:

{% extends 'base.html' %}
{% block title %}Secret{% endblock %}
{% block page_body %}
     <div class="row">
          <form action="{{ url_for('uploaderV') }}" method="POST" enctype="multipart/form-data">
               <p>
                   <input type='file' name='file[]' multiple=''>
                   <input type="submit" value="Upload">
               </p>
          </form>
     </div>
{% endblock %}

每次我尝试上传文件时,服务器都会给我
werkzeug.exceptions.BadRequestKeyError错误请求密钥错误: 400 错误请求: 密钥错误: "文件"
我尝试了不同的方式,现在我真的不知道该怎么办。

您的输入名称是 file[] ,而不是 file 。尝试类似操作:

   file = request.files['file[]']

或者只是将您的输入名称更改为 file

最新更新