В GAE вы можете сказать users.get_current_user()
, чтобы получить пользователя, вошедшего в систему, неявно для текущего запроса. Это работает, даже если несколько запросов обрабатываются одновременно - модуль users
каким-то образом знает, какой запрос вызывается функцией get_current_user
от имени. Я взглянул на код модуля на сервере разработки, и он, похоже, использует os.environ
для получения электронной почты пользователя и других значений, связанных с текущим запросом.
Означает ли это, что каждый запрос получает независимый os.environ
объект?
Мне нужно реализовать сервис, аналогичный users.get_current_user()
, который бы возвращал разные значения в зависимости от запроса, обрабатываемого вызывающим кодом. Предполагая, что os.environ
- это путь, как мне узнать, какие имена переменных уже используются (или зарезервированы) GAE?
Кроме того, есть ли способ добавить хук (или обработчик событий), который вызывается перед каждым запросом?