2009-08-07 90 views
0

我在使用jQuery獲取頁面的常規HTML請求和使用jQuery的AJAX請求的頁面上使用Django + Appengine。在正常的請求中,它會很好地加載當前用戶和會話信息。但是,對於AJAX請求,self.user未設置,users.get_current_user()不返回任何內容。無法在App Engine中獲取當前用戶的AJAX請求

這兩個處理程序都在同一個域中,甚至在同一個.py文件中。使用WING IDE進行調試,二者唯一的區別在於,在普通請求中,webob._parsed_cookies被設置爲會話ID,並且在AJAX請求中根本沒有設置。儘管兩者在request._environ.HTTP_COOKIE中顯示相同的會話ID。

這讓我想到它是一個AJAX請求,而不是HTML請求讓GAE知道加載會話信息。想法?

編輯:對不起,這是我的錯。我沒有意識到我正在使用用戶的自定義用戶實現,使其更像django而不是谷歌用戶 - 而且我跳過了一個步驟,即手動從cookie中獲取會話ID並查找相應的活動用戶該會話ID並將其設置爲請求的「用戶」實例變量。這就是會話ID在請求中但未設置用戶對象的原因。

  1. 列表項
+1

我有正常的AJAX在我的應用程序上工作。你能展示一些你看到錯誤發生的代碼嗎? – AutomatedTester 2009-08-07 07:10:48

回答

0

你當然必須餅乾會話ID集,因爲這是Django的如何確定,哪些用戶登錄。你必須發佈你的一些jQuery代碼和相應的視圖,試圖猜測,出了什麼問題。

相關問題