Skip to main content
 首页 » 编程设计

python之谷歌应用引擎/WSGIApplication : How to check debug

2025年05月04日20shihaiming

在 WSGIApplication 的构造函数中,它接受一个 debug 参数。有没有办法从继承自 webapp.RequestHandler 的处理程序类访问为此设置的值?

def main(): 
    application = webapp.WSGIApplication([('/', fooHandler) 
                                          ], 
                                        debug=True) 
    util.run_wsgi_app(application) 

请您参考如下方法:

一个 WSGIApplication 实例将 debug 参数的值记录为 self.__debug:双下划线是一个 strong 表示没有外部代码该类本身应该查看此属性,因为它被认为是内部应用程序详细信息,并且可以“随时”更改(即使是对 API 的较小修订)。如果您想忽略这个极其强烈的指示,从技术上讲,您可以使用 webapp.WSGIApplication.active_instance._WSGIApplication__debug 来查看它,但这是一个非常糟糕的主意。

一个好得多的想法是在您自己的代码中子类化 WSGIApplication 以使该属性公开可见:

class MyWSGIapp(webapp.WSGIApplication): 
    def __init__(self, url_mapping, debug=False): 
        self.debugmode = debug 
        webapp.WSGIApplication.__init__(self, url_mapping, debug) 

现在,当您使用 MyWSGIapp 而不是 webapp.WSGIApplication 开始时,webapp.WSGIApplication.active_instance.debugmode 变成了 < em>干净,可靠从应用程序中的任何其他地方访问感兴趣的属性的方式。