در Flask نیز میتوان انواع درخواستها (HTTP methods) را مدیریت کرد. Flask از روش decorator برای هر مسیر استفاده میکند و متدها به صورت زیر تعیین میشوند:
- GET
- POST
- PUT
- PATCH
- DELETE
این متدها عملیاتهای CRUD را تشکیل میدهند:
- Create → POST
- Read → GET
- Update → PUT / PATCH
- Delete → DELETE
برای مثال در Flask، تعریف یک مسیر با متدهای مختلف به شکل زیر انجام میشود:
from flask import Flask, request
app = Flask(__name__)
# GET
@app.route("/posts", methods=["GET"])
def get_posts():
return "Return list of posts"
# POST
@app.route("/posts", methods=["POST"])
def create_post():
data = request.form
return f"Create post with data: {data}"
# PUT / PATCH
@app.route("/posts/<int:id>", methods=["PUT", "PATCH"])
def update_post(id):
data = request.form
return f"Update post {id} with data: {data}"
# DELETE
@app.route("/posts/<int:id>", methods=["DELETE"])
def delete_post(id):
return f"Delete post {id}"
در مثال بالا، مسیرها و متدهای مرتبط با عملیات CRUD به صورت مستقیم روی آبجکت app تعریف شدهاند. با این روش میتوانید مدیریت کامل درخواستها و پاسخها را در وبسایت یا اپلیکیشن خود انجام دهید.