PythonのWebフレームワークであるFlaskと、Cross-Origin Resource Sharing (CORS)の対応について解説します。
FlaskとCORS
FlaskはPythonで書かれた軽量なWebフレームワークで、REST APIの開発などによく使われます。一方、CORSは異なるオリジン間でのリソース共有を可能にする技術です。
Flask-CORSのインストール
FlaskでCORSを扱うためには、Flask-CORSという拡張パッケージをインストールします。
pip install -U flask-cors
FlaskでのCORS対応
Flask-CORSを使うと、すべてのルート、すべてのオリジン、すべてのメソッドに対してデフォルトでCORSサポートが有効になります。以下に、FlaskでCORS対応を行う基本的なコードを示します。
from flask import Flask, Response
from flask_cors import CORS, cross_origin
app = Flask(__name__)
CORS(app)
@app.route("/cors", methods=["GET"])
@cross_origin(origins=["http://127.0.0.1:5500"], methods=["GET"])
def cors():
data = { "result": "Cross origin request" }
return Response(response=json.dumps(data), content_type="application/json")
このコードでは、CORS(app)
でFlaskアプリケーションにCORSサポートを追加しています。また、@cross_origin
デコレータを使って、特定のルートに対するCORSの設定を行っています。
以上が、Python FlaskとCORSの基本的な使い方になります。これを活用することで、異なるオリジンからのリクエストを安全に処理することができます。.