How do you access request data in Flask?

Beginner

Answer

Flask provides the request object to access various types of request data:

from flask import request

@app.route('/form', methods=['POST'])
def handle_form():
    # Form data
    username = request.form['username']
    email = request.form.get('email', '')
    
    # JSON data
    if request.is_json:
        data = request.get_json()
    
    # Files
    if 'file' in request.files:
        file = request.files['file']
    
    # Headers
    auth_header = request.headers.get('Authorization')
    
    # Cookies
    session_id = request.cookies.get('session_id')
    
    return 'Data processed'