Flask とは?

Flask

Flask

NRIのOpenStandiaが提供するFlask最新情報

OSSの保守サポートサービスの内容はこちら OSSの導入については、こちらのフォームからお問い合わせ下さい OSS全般の事例紹介はこちら

Flaskバージョンアップ情報

すべてを見る

更新日:2022-06-21

Flaskの概要

Flaskとは、Python言語用の軽量(micro)ウェブフレームワークです。microが意味するところは「ユーザが作成するウェブアプリケーションが1つのファイルで構成されているくらい小さい」や、「Flaskの提供している機能がウェブフレームワークとして少ない」といったことではありません。microが意味するところは、Flaskのコアがシンプルで軽量な作りとなっているということです。コアはシンプルですが各種モジュールを使って拡張可能な作りになっているため、最初はシンプルなアプリケーションとして作り始め、アプリケーションを拡張するに連れ必要な機能を提供するモジュールをFlaskに追加して大きなアプリケーションに作り上げていくといったことが可能です。

どれだけ簡単にWebアプリケーションが作成できるか見てみましょう。ここでは、Hello, World!と表示するだけのWebアプリケーションを作成します。まずは、以下のコマンドでFlaskをインストールします。

pip install flask

そして、以下のコードを書いたpythonファイル(app.py とします)を作成して、
from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello_world():
return 'Hello, World!'

app.run()

以下のコマンドを実行します。
python app.py

これだけでWebアプリケーションが起動します。http://localhost:5000/ にアクセスすれば、Hello, World!と表示された画面が返ります。

TOPに戻る

Flaskの主な特徴

Flaskは、主にWerkzeugとJinjaの2つのライブラリをラッピングして作られています。前者はWebサーバを内包したWSGI(PythonのWebインターフェイス標準規格)に準じたライブラリで、後者はテンプレートエンジンです。多くのWebフレームワークにある、データベースを必須とするアプローチは取っていません。この様に、Flaskのコア部分は2つのライブラリを元に作られているためとてもシンプルです。同じPythonのWebフレームワークであるDjangoはフルスタックなWebフレームワークと位置づけられており、対局に位置するためこの2つはよく比較対照に挙げられます。

TOPに戻る

Flaskの動作環境

Flaskを動作させるためには、以下が必要です。

  • Python 2.7
  • Python 3.5~(最新の3系バージョンの使用を推奨)
  • Python開発ライブラリ

パッケージマネージャーでFlaskをインストール際に下記のモジュールが自動的にインストールされます。

  • Werkzeug
  • Jinja
  • MarkupSafe
  • ItsDangerous
  • Click

TOPに戻る

Flaskのライセンス

Flaskは、三条項BSDライセンス(BSD-3-Claus)と共に配布されています。三条項BSDライセンスは、「無保証であること」、「著作権、ライセンス条項」の明記を条件としています。条件を満たせば、ユーザーはそのソフトウェアの使用や頒布、修正、派生版の頒布(修正したソースコードを公開すること無く、オブジェクトコードの頒布が可能)をすることに制限を受けません。

TOPに戻る

Flaskの参考情報

Webサイト
https://palletsprojects.com/p/flask/
ドキュメント
https://flask.palletsprojects.com/
ソースコード
https://github.com/pallets/flask/

TOPに戻る

Flaskのサポート

NRIではお客様のご要望に応じて様々な支援ができるサービスをご用意しました。
詳細は下記ページをご確認ください。

TOPに戻る

OpenStandiaに関する
資料請求・お問い合わせはこちら

  • 資料請求
  • お問い合わせ

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

  • OpenStandiaサポート対象オープンソース|50種類以上のOSSのサポートをご提供します。
  • 人気midPoint
  • 人気Keycloak
  • 注目MongoDB
  • ForgeRock AM(OpenAM)
  • ForgeRock IDM(OpenIDM)
  • MongoDB
  • Postfix
  • Apache HTTP Server
  • ZABBIX
  • PostgreSQL
  • Apache Struts
  • Apache Kafka
  • Apache Hadoop
  • Apache Spark
  • Spring Framework
  • Apache Tomcat
  • Solr
  • iBATIS
  • DRBD
  • MySQL
  • JBoss
  • Ruby on Rails
  • Jaspersoft
  • OpenLDAP
  • Apache log4j
  • Apache Subversion
  • ForgeRock DS(OpenDJ)
  • Pacemaker
  • Samba
  • Red Hat Enterprise Linux
  • Nginx
  • BIND
  • Dovecot
  • Pentaho
  • sendmail
  • Courier-IMAP
  • ForgeRock DS(OpenDJ)
  • Heartbeat
  • Hibernate
  • Hinemos
  • MyBatis
  • MySQL Cluster
  • Apache Axis2
  • Squid
  • OpenSSO