クッキーとは何ですか。
クッキーがある作品:要求の受信後に発生したサーバからコンテンツ、ブラウザの店ローカル;ブラウザは、ブラウザが自動的にこのクッキーがかかりますので、サーバは、このクッキーによって判断することができるようになります時に再び訪問あなたが誰ですか
Djangoの操作クッキー
クッキーの取得
request.COOKIES [ ' キー' ] request.get_signed_cookie(キー、デフォルト = RAISE_ERROR、塩= ''、max_ageの=なし)
パラメータ:
デフォルト:デフォルト値
塩:塩
max_ageの:時間をかけてバックグラウンドコントロール、秒の
Djangoはクッキーを設定します。
担当者= のHttpResponse(...) 議員=レンダリング(リクエスト、...) rep.set_cookie(キー、値、...) rep.set_signed_cookie(キー、値、塩 = ' 加密盐'、max_ageの=なし、。 ...)
パラメータ:
キー:キー
値:値
max_ageの:秒単位のタイムアウト
expiress:タイムアウト
パス:効果的なクッキーのパスは、ルートパスを表し、特別:クッキーのルートパスは、ページのURLのいずれかによってアクセスすることができます
ドメイン:ドメインクッキーが有効です
固定します。https伝送
HTTPのみ= falseを:のみHTTPSプロトコル伝送、JavaScriptは(キャプチャの底に取得することができますが覆われていてもよい、絶対ではない)を取得することができません
Djangoはクッキーを削除します
DEF ジンバブエログアウト(要求): REP =リダイレクト(「/ログイン/ 」) rep.delete_cookie(「ユーザー」) #はする前に、ユーザーのブラウザに設定さusercookie値を削除 返す REPを
クッキーの着陸チェック
DEFのcheck_login(FUNC): @wraps(FUNC) DEFインナー(要求、* argsを、** kwargsから): next_url = request.get_full_path() IF request.get_signed_cookie(" ログイン"、=塩" SSS "、デフォルト=なし) == 「はい」: #のユーザーがログインしている... 返す(**要求、* argsを、FUNCをkwargsからの) 他: #どのユーザがログインしていない、ログインページジャンプ到着した リターンリダイレクト(" /ログイン/ = [次へ]を? } { " .format(next_url)) 返すインナー デフログイン(要求): もし request.method == " POST " : ユーザ名 = request.POST.get(" ユーザ名" ) のpasswd = request.POST.get(" パスワード" ) であれば、ユーザー名== " XXX " と passwdの== " dashabi " : next_url = request.GET.get(" 次" ) であれば next_url と next_url!=" /ログアウト/ " : 応答 = リダイレクト(next_url) 他: 応答 =リダイレクト(" / class_list / " ) response.set_signed_cookie(" ログイン"、" はい"、塩= " SSS " ) の戻り応答 のリターンは、(リクエストをレンダリング」login.htmlと")
セッションとは何ですか
ステートレス不足HTTPのためのクッキーまで、その安全性が低いので、サーバーは、ローカルに格納されているテキストの形で来て誰が知っているが、クッキーましょう。私たちは、異なるユーザを識別するためにクッキーを使用して、対応します実際には、言語やフレームワークに限定されるものではない何かを別のクッキーとセッションの共通性を4096バイトよりも個人情報とテキストを保存中のセッション
Djangoのセッション設定
ますrequest.session []