ais05
@ais05

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

PythonCGIでCookieを取得したい

PythonCGIでCookieを取得したい

Nginx + SimpleCGI + Pythonでwebアプリを作っているのですが、クライアントから送られてくるCookieの取得方法が分かりません。
ログイン機能を実装したいのですがここが分からなくて困っています。初心者質問で申し訳ないのですが教えていただけると嬉しいです

0

2Answer

ログイン機能を実装したいのですがここが分からなくて困っています。

自分の勉強のために自力で認証システムを実装したいということでなければ、python web アプリ用のフレームワークに備わっている認証機能を利用することをお勧めします。その中にはクッキーベースの認証システムがあるはずです。

初心者が自力で認証システムを実装しても、特にセキュリティの面で使い物にならず、時間と労力の浪費ということになる可能性が大です。

フレームワークに備わっている認証機能を実装して、それを勉強するのが近道だと思います。

2Like

フレームワークを使わずに CGI の仕組みだけを使って実現するなら以下の通りです。

import os
import http.cookies


http_cookie = os.environ.get("HTTP_COOKIE")
cookie = http.cookies.SimpleCookie()
cookie.load(http_cookie)
print(cookie["FOO"].value)

環境変数 HTTP_COOKIE に入っている Cookie 文字列を http.cookies.SimpleCookie クラスでパースし、値を取り出すことができます。

参考: https://docs.python.org/ja/3/library/http.cookies.html

1Like

Comments

  1. @ais05

    Questioner

    できました!ありがとうございます!

Your answer might help someone💌