【发布时间】:2011-08-11 21:44:28
【问题描述】:
我正在使用 python 和 Google 应用引擎。我想使用任务队列。作为任务队列处理程序的一部分,我检查当前用户是否是管理员(使用用户服务)。这个测试总是失败。有没有办法让这个测试通过?
更新:为避免进一步混淆,我试图找出触发任务的用户是否是管理员(这只是一个简单的示例)。我了解该任务正在从服务器运行,并且所有用户 cookie 早已不复存在。所以我一直在寻找的答案是一种将会话转移到任务的方法
import logging
from google.appengine.api import users
from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import run_wsgi_app
from google.appengine.api import taskqueue
class MyRequesHandler(webapp.RequestHandler):
def get(self):
taskqueue.add(url="/task/")
class MyTaskHandler(webapp.RequestHandler):
def post(self):
if users.is_current_user_admin():
logging.debug("admin")
else:
logging.debug("not admin")
def main():
logging.getLogger().setLevel(logging.DEBUG)
application = webapp.WSGIApplication([
('/', MyRequesHandler),
('/task/', MyTaskHandler)
],
debug=True)
run_wsgi_app(application)
【问题讨论】:
标签: google-app-engine task-queue