FixStructurePhone
Some checks failed
K8S Fission Deployment / Deployment fission functions (push) Failing after 23s

This commit is contained in:
QuangMinh_123
2025-12-08 20:15:52 +07:00
parent da64947bae
commit 26a73dd2ac
5 changed files with 121 additions and 133 deletions

View File

@@ -1,32 +1,30 @@
import crud
from flask import jsonify, request
ALLOWED_IMAGE_TYPES = {"image/jpeg", "image/png", "image/gif", "image/webp"}
def main():
"""
```fission
{
"name": "avatar-admin-get-insert-delete-put",
"name": "phone-admin-get-insert-delete",
"http_triggers": {
"avatar-admin-get-insert-delete-put-http": {
"url": "/ailbl/admin/avatars",
"methods": ["PUT", "POST", "DELETE", "GET"]
"phone-admin-get-insert-delete-http": {
"url": "/ailbl/admin/users/{UserId}/phones",
"methods": [ "POST", "DELETE", "GET"]
}
}
}
```
"""
try:
if request.method == "PUT":
return make_update_avatar_request()
elif request.method == "DELETE":
return make_delete_avatar_request()
if request.method == "DELETE":
return make_delete_request()
elif request.method == "POST":
return make_insert_request()
elif request.method == "GET":
return make_get_avatar_request()
return make_get_request()
else:
return {"error": "Method not allow"}, 405
except Exception as ex:
@@ -36,54 +34,32 @@ def main():
def make_insert_request():
try:
user_id = request.headers.get("X-User")
file = request.files.get("avatar")
if not user_id or not file:
return jsonify({"error": "user_id or file is required"}), 400
if file.mimetype not in ALLOWED_IMAGE_TYPES:
return jsonify(
{"error": "Invalid file type. Only JPG, PNG, GIF, WEBP are allowed."}
), 400
response, status = crud.update_or_create_avatar(user_id, file)
response, status = crud
return jsonify(response), status
except Exception as e:
return jsonify({"error": str(e)}), 500
def make_get_avatar_request():
def make_get_request():
try:
user_id = request.headers.get("X-User")
if not user_id:
return jsonify({"error": "user_id is required"}), 400
return crud.get_avatar_url(user_id)
return crud
except Exception as e:
return jsonify({"error": str(e)}), 500
def make_delete_avatar_request():
def make_delete_request():
try:
user_id = request.headers.get("X-User")
if not user_id:
return jsonify({"error": "user_id is required"}), 400
response, status = crud.delete_avatar(user_id)
response, status = crud
return jsonify(response), status
except Exception as e:
return jsonify({"error": str(e)}), 500
def make_update_avatar_request():
try:
user_id = request.headers.get("X-User")
file = request.files.get("avatar")
if not user_id or not file:
return jsonify({"error": "user_id or file is required"}), 400
if file.mimetype not in ALLOWED_IMAGE_TYPES:
return jsonify(
{"error": "Invalid file type. Only JPG, PNG, GIF, WEBP are allowed."}
), 400
response, status = crud.update_or_create_avatar(user_id, file)
return jsonify(response), status
except Exception as e:
return jsonify({"error": str(e)}), 500