LearnThatStack Ace your next interview
Flask · question
Question 3 of 60

How do you handle different HTTP methods in Flask routes?

beginner
← All Flask questions
Re-explain

Pass a methods list to the route decorator, then branch on request.method inside the view. Without that list, a route answers only GET.

@app.route('/api/users', methods=['GET', 'POST'])
def handle_users():
    if request.method == 'POST':
        return create_user()
    return get_users()

@app.route('/api/users/<int:user_id>', methods=['PUT', 'DELETE'])
def handle_user(user_id):
    if request.method == 'PUT':
        return update_user(user_id)
    elif request.method == 'DELETE':
        return delete_user(user_id)

Flask adds HEAD for you whenever GET is allowed, and it answers OPTIONS requests on its own. A request with any other method gets 405 Method Not Allowed, and the view never runs.

One view for several methods suits code that shares setup. Separate views are often easier to read, and Flask has shortcut decorators such as @app.get() and @app.post() for them. For a whole resource, MethodView maps each HTTP method to a class method with the same name, such as get or delete.

Rewriting in plainer words…

This answer doesn't lend itself to a diagram - it reads best . No credits were charged.

Why there's no diagram: “”

The interactive diagram is below the answer - jump to diagram ↓ · Below it, the related concept . Jump to it ↓

The diagram below the answer is the concept . Jump to it ↓

Tailored explanation · switch back to · ·
What should the new diagram focus on?
How well did you know this?
AI:

Saved in this browser - sign in to keep your review list.

How should your speech become text?

Listening… your words appear above as you speak - tap Stop when you're done.

Recording · cr - tap Stop & transcribe when you're done.

Transcribing with AI…

Voice:

Keep going - a few more words and AI can grade it.

Interview lens

Likely follow-ups, what you can say, and the weak answers to avoid.

Sign in free to open it Free account - the lens opens as soon as you're back.

Want a quick review of the fundamentals? See the Flask cheatsheet.

← Back to all Flask questions
Pro · $10/mo

51 of 60 Flask answers are in Pro.

Full answers, code samples, and AI explanations that go simpler or deeper. Cancel anytime.

  • Full answers + code
  • AI explanations, simpler or deeper
  • 1,000 AI credits / month
  • Cancel anytime