MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Flask - Bad Request Le navigateur (ou proxy) a envoyé une requête que ce serveur n'a pas pu comprendre

L'erreur qui s'y trouve résulte d'une BadRequestKeyError à cause de l'accès à une clé qui n'existe pas dans request.form .

ipdb> request.form['u_img']
*** BadRequestKeyError: 400 Bad Request: The browser (or proxy) sent a request that this server could not understand.

Les fichiers téléchargés sont saisis sous request.files et non request.form dictionnaire. De plus, vous devez perdre la boucle car la valeur saisie sous u_img est une instance de FileStorage et non itérable .

@app.route('/', methods=['GET', 'POST'])
def index():
    target = os.path.join(app_root, 'static/img/')
    if not os.path.isdir(target):
        os.makedirs(target)
    if request.method == 'POST':
        ...
        file = request.files['u_img']
        file_name = file.filename or ''
        destination = '/'.join([target, file_name])
        file.save(destination)
        ...
    return render_template('index.html')