私はDjango
とMongoDB
をバックエンドデータベースとして使用しています。私はすでにこれらのコードを設定しsettings.py
でDjangoは私が設定したセッションを使用できますが、Webブラウザのインスペクタでそれを見ることはできません
:
SESSION_ENGINE = 'mongoengine.django.sessions'
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.sessions',
そして、私のview/user.py
に(コードの一部のみ)
if user.password == password:
#add session information
if request.session.test_cookie_worked():
returnmsg = "COOKIE OK"
else:
returnmsg = "COOKIE ERR"
response = HttpResponse(returnmsg)
response.set_cookie("username", username)
request.session['username'] = username
user.log.append(UserLog(time=datetime.now(), ip=request.META['REMOTE_ADDR'], login=True))
user.save()
return response
私は、私のサイトを実行すると、私はこの機能により、ログイン可能性があり、私のセッション設定を確認する必要がある他の機能は、username
からresponse.session
まで読むことができます。
returnmsgはCOOKIE ERR
です。SafariのWebインスペクタを使用すると、セッションやCookieは表示されません。
ここで、Djangoはセッションデータをどこに保存しますか?それはクライアントのコンピュータ上でエンコードされたクッキーですか?それが私のクライアントのコンピュータに保存されていない場合、なぜDjango
もそれを得ることができますか? 私のコードでは、クッキーを直接設定してみましたが、まだ動作しません。
MongoEngine
には何か問題がありますか?私は間違った方法でそれを使いましたか?
**このコードで暗示されているように、パスワードをプレーンテキストとして保存しないことを願っています。 –
その単純なテスト。私は、コンテキストでパスワードのMD5エンコードを行います。 – bxshi