Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在应用程序引擎应用程序初始化时执行代码_Python_Google App Engine_Google Cloud Datastore - Fatal编程技术网

Python 在应用程序引擎应用程序初始化时执行代码

Python 在应用程序引擎应用程序初始化时执行代码,python,google-app-engine,google-cloud-datastore,Python,Google App Engine,Google Cloud Datastore,在appengine上运行pythonweb应用程序时,我们需要设置一些机制,以便在应用程序初始化之前(或期间)执行一些代码。这意味着,在最佳解决方案中,我们需要运行的代码会尽早执行。这样做的目的是允许在访问本地数据存储之前初始化App Engine remote_api,以防止数据存储访问冲突 这是我们正在寻找的一个非常粗略的例子: imports (including remote_api) def some_initialization_function_or_similar (args

在appengine上运行pythonweb应用程序时,我们需要设置一些机制,以便在应用程序初始化之前(或期间)执行一些代码。这意味着,在最佳解决方案中,我们需要运行的代码会尽早执行。这样做的目的是允许在访问本地数据存储之前初始化App Engine remote_api,以防止数据存储访问冲突

这是我们正在寻找的一个非常粗略的例子:

imports (including remote_api)

def some_initialization_function_or_similar (args):
    some_init_function_calls(...)

    setup_remote_api(...)

    access_datastore_the_first_time(...)

请将此问题作为我们正在查看的场景的参考:

假设您有一个单一的入口点(=在app.yaml中命名的脚本),您可以在导入之后调用所需的代码,但在调用main()函数之前。这意味着它将仅在导入主脚本时运行,而主脚本仅在第一个请求时运行(到达该入口点)


如果您有多个入口点,请尝试将其放在appengine_config.py中。很早就加载了。

为什么需要这个?除了参考单独的抽象情况之外,理解用例可能会有所帮助,并且可能会产生不需要这种解决方案的其他想法。签出源代码()也可能会有帮助。@bossylobster我们需要这样做,以便建立一个使用远程api访问本地数据库的设置,以帮助我们调试一些用例,否则这些用例将过于昂贵或难以执行。我们已经测试了远程api函数,因此我们可以从远程数据存储中检索数据,但是在将数据写入WSGI应用程序的响应时,我们发现了一个错误,我们认为这与数据存储冲突有关。如果要检查本地数据存储,导航到
http://localhost:PORT/_ah/admin/interactive
其中
端口
是您用于本地应用服务器的端口。您可以对应用程序执行任意代码。谢谢,Guido。appengine\u config.py位于应用程序的根目录中的何处。当我将远程api初始化代码添加到appengine\u config.py时,我会遇到以下错误:
文件“C:\Program Files(x86)\Google\Google\U appengine\Google\appengine\tools\dev\u appserver\u blobstore.py”,第79行,在GetBlobStorage return apiproxy\u stub\map.apiproxy.GetStub中('blobstore')。存储属性Error:'RemoteStub'对象没有属性'storage'
是否可以帮助处理该消息?