2009-08-07 12 views
0

私は、ページを取得するための通常のHTMLリクエストとjQueryを使用するAJAXリクエストの両方を持つページでDjango + Appengineを使用しています。通常のリクエストでは、現在のユーザーとセッションの情報を正常にロードします。ただし、AJAXリクエストの場合、self.userは設定されず、users.get_current_user()は何も返しません。App EngineでAJAXリクエストの現在のユーザーを取得できません

両方のハンドラは同じドメインにあり、同じ.pyファイルでもあります。 WING IDEを使用してデバッグする場合、2つの唯一の違いは、通常のリクエストではwebob._parsed_cookiesがセッションIDに設定され、AJAXリクエストではまったく設定されないという点です。両方とも、同じセッションIDをrequest._environ.HTTP_COOKIEに表示します。

これは、GAEがセッション情報の読み込みを知らせないようにするHTMLリクエストではなく、AJAXリクエストであると考えています。アイデア?

編集:申し訳ありませんが、これは私のせいでした。私はカスタムユーザーの実装を使用してgoogleユーザーではなくdjangoのようにしていたことに気付いていませんでした。そして、セッションIDを手動で取得してアクティブユーザーを検索するステップをスキップしました。そのセッションIDをリクエストの 'user'インスタンス変数として設定します。そのため、セッションIDは要求に含まれていましたが、ユーザーオブジェクトは設定されていませんでした。

  1. リスト項目
+1

私のアプリケーションには正常なAJAXが動作しています。エラーが発生した場所のコードを表示できますか – AutomatedTester

答えて

0

これはDjangoがログインしているユーザー、どのように決定するかであるので、あなたは確かに、クッキーにセッションIDが設定されている必要があります。推測しようとすると、何が起こっているのか、あなたのjqueryコードと対応するビューのいくつかを投稿する必要があります。

関連する問題