تحديد الأساليب المسموح بها في مسار
مرّر methods إلى @app.route من أجل GET وPOST.
تحديد الأساليب المسموح بها في مسار درس مجاني في Flask Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Flask Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Flask Academy 4 دروس في المجموع.
بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.
Routes Default to GET
Every Flask route you write so far only answers GET requests. Browsers use GET to fetch pages, so it is the natural default.
The methods Argument
To accept other verbs, pass a methods list to the route decorator. It tells Flask exactly which HTTP verbs the view will handle.
@app.route("/submit", methods=["GET", "POST"])
def submit():
return "ok"Why List GET Explicitly
Once you set methods, the implicit GET disappears. If you still want GET, you must include it in the list yourself.
A POST-Only Route
Some endpoints should never serve a page. Make a route POST-only by listing just POST, and GET requests will be refused.
@app.route("/api/items", methods=["POST"])
def create_item():
return "created"Verbs Are Uppercase Strings
Flask expects each verb as an uppercase string like "GET" or "POST". Lowercase entries simply will not match incoming requests.
HEAD Comes for Free
When you allow GET, Flask also answers HEAD automatically. HEAD returns the same headers as GET but with no body.
OPTIONS Is Added Too
Flask auto-handles OPTIONS as well, replying with an Allow header that lists the methods your route accepts.
Beyond GET and POST
APIs often need more verbs. You can list PUT, PATCH, or DELETE the same way to support updating and removing resources.
@app.route("/api/items/<id>", methods=["PUT", "DELETE"])
def edit_item(id):
return "changed"One Function, Many Methods
A single view can accept several verbs at once. Inside it you decide what each verb does, all from one function.
Match the Verb to Intent
Use GET to read and POST to create. Choosing the right verb keeps your API predictable for every client that calls it.
Wrong Verb, No Match
If a client uses a verb you never listed, Flask refuses the request entirely. Declaring methods is your first line of access control.
Quick Check
Think about what happens to GET when you set methods.
Recap
Routes default to GET, but the methods list lets you accept POST, PUT, and more. List GET yourself if you still need it. Nicely done! 🎉
الأسئلة الشائعة
هل درس «تحديد الأساليب المسموح بها في مسار» مجاني؟
نعم — نص درس «تحديد الأساليب المسموح بها في مسار» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Flask Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Flask Academy 4 دروس في المجموع.
ماذا ستتعلم في «تحديد الأساليب المسموح بها في مسار»؟
مرّر methods إلى @app.route من أجل GET وPOST. تتمرن على Flask Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Flask Academy؟
لا تُشترط خبرة سابقة. Flask Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.
كم من الوقت يستغرق درس «تحديد الأساليب المسموح بها في مسار»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Flask Academy هذا؟
نعم. كل درس في Flask Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- تحديد الأساليب المسموح بها في مسار
- تفرّع المنطق حسب request.method
- قراءة بيانات POST من الجسم
- شرح 405 Method Not Allowed