Monday, 10 July 2023

413 even for small files flask

from flask import Flask, request, jsonify
from werkzeug.utils import secure_filename


app = Flask(__name__)
app.config['MAX_CONTENT_LENGTH'] = 16 * 1000 * 1000


ALLOWED_EXTENSIONS = [".pdf", ".PDF"]


def allowed_file(filename):
    return "." in filename and filename.rsplit(".", 1)[1].lower() in ALLOWED_EXTENSIONS


@app.route("/upload-pdf", methods=["POST"])
def upload_pdf():
    # check if the post request has the file partx
    if "file" not in request.files:
        resp = jsonify({"message": "No file part in the request"})
        resp.status_code = 400
        return resp
    file = request.files["file"]
    if file.filename == "":
        resp = jsonify({"message": "No file selected for uploading"})
        resp.status_code = 400
        return resp
    if file and allowed_file(file.filename):
        filename = secure_filename(file.filename)
        print(type(filename))
        # file.save(os.path.join(app.config["UPLOAD_FOLDER"], filename))
        resp = jsonify({"message": "File successfully uploaded"})
        resp.status_code = 201
    else:
        resp = jsonify(
            {"message": "Allowed file types are pdf"}
        )
        resp.status_code = 400
    return resp


if __name__ == "__main__":
    app.run()

This is my code. BUt when I run python app.py and the curl command curl -d @it_return_2020_21.pdf http://127.0.0.1:5000/upload-pdf. I get <title>413 Request Entity Too Large</title>. The file I am trying to upload is 275 kb.



from 413 even for small files flask

No comments:

Post a Comment