【问题标题】:Python Appengine run certain code before following app.yamlPython Appengine 在跟随 app.yaml 之前运行某些代码
【发布时间】:2014-03-25 02:46:09
【问题描述】:

我有一个运行良好的 Appengine 应用程序,但是,我想为每个请求运行一些代码,但我不想将它添加到每个 Python 文件的顶部(这很混乱,而且时间太长)。有没有办法告诉 app.yaml 运行一个 python 文件,然后运行另一个?

例如;

#run this;
- url: .*
script: everyrequest.app

#Now run this;

- url: /mypage/.*
script: myscript.app

这可能吗?还是我只需将代码添加到我的所有 Python 文件中?

【问题讨论】:

    标签: python google-app-engine


    【解决方案1】:

    您可以使用为每个新实例运行的 appengine_config.py 或使用 request_handler 的 init,如 webapp2:

    class MainHandler(webapp2.RequestHandler):
    
        def __init__(self, request, response):
    
            super(MainHandler, self).__init__(request, response)                                       
    
            .... your code here ....
    

    【讨论】:

      【解决方案2】:

      使用appengine_config.py 这已记录在案,并且始终在运行任何代码之前运行。这是设置路径、定义不适合 app.yaml 的环境变量、设置多租户命名空间等的理想场所。

      请参阅文档https://developers.google.com/appengine/docs/python/tools/appengineconfig?hl=en

      【讨论】:

        猜你喜欢
        • 2018-06-15
        • 2016-12-23
        • 1970-01-01
        • 1970-01-01
        • 2014-08-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-10-19
        相关资源
        最近更新 更多