From d31ccc82aa84432c6cfef1a0a2d8f34beee179cd Mon Sep 17 00:00:00 2001 From: BonfaceKilz Date: Wed, 10 Mar 2021 12:04:13 +0300 Subject: Add extra endpoint for when TOKEN isn't provided --- gn3/api/general.py | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/gn3/api/general.py b/gn3/api/general.py index d05d6f4..38e6154 100644 --- a/gn3/api/general.py +++ b/gn3/api/general.py @@ -11,12 +11,32 @@ from gn3.file_utils import extract_uploaded_file general = Blueprint("general", __name__) +@general.route("/metadata/upload/", methods=["POST"], + strict_slashes=False) +def upload_metadata_with_no_token(): + """Extract uploaded file to a some TMPDIR/TOKEN/ with a TTL(Time To Live). The +TTL is set in the metadata file. If none is provided, the default is 1 +week. Generate a TOKEN + + """ + file_ = request.files.get("file") + if not file_: + return jsonify(status=128, error="Please provide a file!"), 400 + status = 201 + results = extract_uploaded_file( + gzipped_file=file_, + target_dir=current_app.config["TMPDIR"], + token=None) + if results.get("status") > 0: + status = 500 + return jsonify(results), status + + @general.route("/metadata/upload/", methods=["POST"], strict_slashes=False) def upload_metadata(token): """Extract uploaded file to a some TMPDIR/TOKEN/ with a TTL(Time To Live). The -TTL is set in the metadata file. If none is provided, the default is 1 -week. If a TOKEN is not provided, generate a token for the new user. +TTL is set in the metadata file. If none is provided, the default is 1 week. """ file_ = request.files.get("file") -- cgit v1.2.3