首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

web.py入门纪录

2013-01-28 
web.py入门纪要web.py自带的服务器在调试模式下,session不能正常工作,因为调试模式支持模块重载入(重载入,

web.py入门纪要
web.py自带的服务器在调试模式下,session不能正常工作,因为调试模式支持模块重载入(重载入,绝非重载。是reload,而非override),所以reloader会载入主模块两次,因此,就会创建两个session对象。
为此,可以直接禁用调试模式,只要令web.config.debug = False即可。如果非要在调试模式下使用session,也有方法,我们只要把session存储在全局的数据容器中,就能避免二次创建session,如下:

import web, os, wsgiref.util, mimetypes, datetime def serve_static(filename, mime_type=None):    ''' Serves a file statically '''    if mime_type is None:        mime_type = mimetypes.guess_type(filename)[0]    web.header('Content-Type', '%s' % mime_type)    stat = os.stat(filename)    web.header('Content-Length', '%s' % stat.st_size)    web.header('Last-Modified', '%s' %    web.http.lastmodified(datetime.datetime.fromtimestamp(stat.st_mtime)))    return wsgiref.util.FileWrapper(open(filename, 'rb'), 16384) class Static(object):    ''' Static file serving.'''    def GET(self, name):        return serve_static(os.path.join('mystatic', name)) urls = (    '/mystatic/(.*)', Static    )

本文出自夜惊心的博客,转载请保留出处

热点排行