2009-08-07 78 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代码和相应的视图,试图猜测,出了什么问题。

相关问题