Flask Server

Flask HTML server using templates (Jinja2)

Project structure

Basic Flask HTML server (app.py)

Base template (templates/base.html)

Page template (templates/index.html)

5. Static CSS (static/style.css)

Main Flask template keyworks

| | render_template() | renders HTML | | {{ variable }} | insert Python values | | {% if %}, {% for %} | logic | | {% extends %} | template inheritance | | url_for('static', filename=...) | static files |

Common template patterns

  • Loop

  • Conditional

7. Example URLs

API server

Dependencies

Flask API Server

  • Write app.py

  • Run the server

Web client

Web Socket server

Dependencies

Flask WebSocket server

Simple JavaScript client

Flask response types

String

Tuple (body, status, headers)

Response

jsonify()

make_response()

render_template()

render_template_string()

abort() (error + redirect-like flow stop)

send_file()

send_from_directory()

Streaming response

Redirect (URL or endpoint)

  • Redirect to a URL

  • Redirect to a Flask endpoint

  • Redirect with status code

Common codes:

Code

Description

302

default

301

permanent

303

after POST (recommended)

307

preserve method

Last updated