2016-09-05 2 views
0

Google appengine과 python에서 간단한 웹 응용 프로그램을 작성하고 있습니다. 이 응용 프로그램에서는 두 가지 유형의 세션을 처리해야합니다. 사용자에 대한 정보를 저장하는 "장기 세션", 긴 max_age 매개 변수가있는 현재 페이지 ecc 및 액세스 토큰을 보관하는 max_age 약 20 분의 "단기 세션" API를 통한 인증.파이썬 webapp2에서 여러 세션 핸들러 설정

나는 다음과 같은 BaseHandler 구현 :

import webapp2 
from webapp2_extras import sessions

class BaseHandler(webapp2.RequestHandler):

def dispatch(self): # Get a session store for this request. self.session_store = sessions.get_store(request=self.request) try: # Dispatch the request. webapp2.RequestHandler.dispatch(self) finally: # Save all sessions. self.session_store.save_sessions(self.response) @webapp2.cached_property def session(self): # Returns a session using the default cookie key. return self.session_store.get_session(backend='memcache') @webapp2.cached_property def session_auth(self): return self.session_store.get_session(backend='memcache', max_age=20*60)<code>

문제가 모든 세션이 MAX_AGE = 20 * 60 초 (및 self.session_auth 액세스 할뿐만 아니라 세션)를 가지고있다 .. 을 어떻게해야 이거 해결해?

감사

답변

0

은 구성 PARAMS을 설정하십시오 :

config = {} 
config['webapp2_extras.sessions'] = { 
    'session_max_age': 100000, # try None here also, though that is the default 
} 

app = webapp2.WSGIApplication([ 
    ('/', HomeHandler), 
], debug=True, config=config) 
나는 매개 변수 session_max_age을 설정하는 것을 시도했다, 그러나 이것은 전체 세션에뿐만 아니라 session_auth ..
+0

이들은 일단 설정하면 session_auth를 변경할 수 있으며 나머지는 기본값으로 유지해야합니다. –

+0

네 역할을하지만, – GAEfan