Как использовать мензурку с GAE - PullRequest
2 голосов
/ 09 мая 2011

Привет, я собираюсь использовать собственный объект сеанса, и я пытаюсь применить стакан с python.Можете ли вы сказать мне, как использовать его с Google App Engine?У меня есть следующий код, а затем я не уверен, как поступить:

    session_opts = {
        'session.cookie_expires': True,
        'session.type': 'ext:google',
        'session.key': 'mykey.beaker.session.id',
    }

    def main():
        logging.getLogger().setLevel(logging.DEBUG)

        application = webapp.WSGIApplication([(...
... handlers          ],debug=True)
        application = SessionMiddleware(application, session_opts)

        util.run_wsgi_app(application)

1 Ответ

4 голосов
/ 09 мая 2011

Как указано в документации :

Как только SessionMiddleware будет в место, объект сеанса будет сделан доступно как beaker.session в WSGI environment.

В Google App Engine вы можете получить доступ к диктонному объекту сеанса мензурки из WebHandler с помощью:

session = self.request.environ['beaker.session']

сеанс представляет собой словарь Python , куда вы можете в основном поместить данные с помощью:

session['somekey'] = 'foo'

или получить данные, используя:

my_var = session['somekey']

Простой пример Counter будет примерно таким:

class MainPage(webapp.RequestHandler):
  def get(self):
    session = self.request.environ['beaker.session']

    if 'counter' in session:
       counter = session['counter'] + 1
       session['counter'] = counter
    else:
       session['counter'] = 1

    self.response.out.write('counter: %d' % counter)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...