reddit API のログイン機能を追加したいのですが、Cookie が保存されません。次のコードは、Django 独自の ModelBackend よりもスタックの上位にインストールされているカスタム認証バックエンドで呼び出されています。
response = requests.post(REDDIT_LOGIN_URL, data={'user' : username,
'passwd' : password})
cookie = SimpleCookie()
cookie.load(response.headers.get('set-cookie'))
cookie['reddit_session'] を印刷すると、(難読化された) Morsel が返されます
<Morsel: reddit_session='5356323%2C2012-05-15T17%3A15%3A08%xxxxxxxxxxxx7a4f25351b003a2484'>
しかし、この Cookie は私のブラウザのどこにもありません。ページがリロードされると、reddit セッションがなくなり、このセッションを再度作成しない限り、他の reddit API 呼び出しを使用できなくなります。Chrome 開発者ツールを使用して Cookie を確認すると、[Resources] > [Cookies] の下に「blank」というエントリが表示されます。これをクリックすると、「このサイトには Cookie がありません」という白いページしか表示されません。
私はdjango-1.4でこれを行っています
SESSION_ENGINE = "django.contrib.sessions.backends.signed_cookies"
settings.py で有効にします。せずに試してみましたが、結果は同じでした。
ここで何か不足していますか?私もnarwaを使ってみましたが、クッキーも保存されていません。同じ Django セッションが django_language および session_id Cookie を保存しているため、ブラウザーで Cookie が確実に有効になっています。
ポインタや回答をいただければ幸いです。