Outils pour utilisateurs

Outils du site


dev:python:flask:exemples:redirections

:TODO_DOCUPDATE:

Flask : redirections

Le framework Flask propose la fonction redirect(). Pour les redirections internes, on l'utilise conjointement à la fonction url_for() :

from flask import Flask, redirect, url_for
 
app = Flask(__name__)
 
@app.route('/')
def home():
    return 'Welcome to Home Page'
 
@app.route('/external')
def external_redirect():
    return redirect('https://www.example.com')
 
@app.route('/test-perm-redirect')
def redirect_example():
    return redirect(url_for('home'), code=301)

On peut spécifier un code d'état HTML via l'option code. Les plus utilisés sont :

  • 301 : Ressource déplacée de façon permanente ;
  • 302 : Ressource déplacée de façon temporaire.

Redirections avec paramètres

Il est possible de spécifier des paramètres notamment lorsque les URLs cibles sont dynamiques :

@app.route('/user/')
def user_profile(username):
    return f'Profile page of {username}'
 
@app.route('/redirect-to-user')
def redirect_to_user():
    return redirect(url_for('user_profile', username='john'))
dev/python/flask/exemples/redirections.txt · Dernière modification : 2026/04/06 09:11 de yoann