index.wsgi
#!/usr/bin/env python # coding: utf-8 import os import web import sae from config.url import urls from config import settings #是否具有调试功能 web.config.debug = False # app = web.application(urls, globals()).wsgifunc() # application = sae.create_wsgi_app(app) #解决Session在SAE中的问题 app = web.application(urls, globals()) #将session保存在数据库中 db = settings.db store = web.session.DBStore(db, 'sessions') #session = web.session.Session(app, store, initializer={'access_token': 'true'}) session = web.session.Session(app, store) web.config._session = session application = sae.create_wsgi_app(app.wsgifunc()) url.py #!/usr/bin/env python # coding: utf-8 pre_fix = 'controllers.' urls = ( '/', pre_fix + 'todo.Index', '/todo/new', pre_fix + 'todo.New', '/todo/(\d+)', pre_fix + 'todo.View', '/todo/(\d+)/edit', pre_fix + 'todo.Edit', '/todo/(\d+)/delete', pre_fix + 'todo.Delete', '/todo/(\d+)/finish', pre_fix + 'todo.Finish', '/todo/login', pre_fix + 'login.LoginUser', '/todo/checkuser',pre_fix+'login.CheckUser', '/todo/reset',pre_fix+'todo.reset', '/todo/saveupload','mycontrollers.saveupload.SaveUpload' ) setting.py #!/usr/bin/env python # coding: utf-8 import web import sae.const #数据库设定 db = web.database(dbn='mysql', user=sae.const.MYSQL_USER, pw=sae.const.MYSQL_PASS, host=sae.const.MYSQL_HOST, port=3307, db=sae.const.MYSQL_DB) #模板设定 render = web.template.render('templates/', cache=False) config = web.storage( email='oooo@qq测试数据 /* */ ', site_name = '任务跟踪', site_desc = '', static = '/static', ) web.template.Template.globals['config'] = config web.template.Template.globals['render'] = render login.py #!/usr/bin/env python # coding: utf-8 import web from config import settings render = settings.render def myloadhook(): global session session = web.config._session class LoginUser: def GET(self): return render.LoginUser() class CheckUser: def POST(self): #获取Session相关信息 myloadhook() #获取表单信息 i = web.input() username =i.get('txtUserName',None) password=i.get('txtUserPass',None) #从全局配置文件中得到session session = web.config._session if username == 'chu888' and password == 'chu888': session.access_token = 'true' raise web.seeother('/') else: session.access_token = 'false' raise web.seeother('/todo/login')
查看更多关于web.py在SAE中的Session问题解决方法(使用mysql存储)的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did91199