在App Engine中写入文件:以后如何查看该文件?

时间:2019-02-14 17:14:30

标签: google-app-engine

我成功启动并运行了“ App Engine标准环境中的Python 3快速入门”示例,并且我认为我可能会尝试通过执行Cron作业来尝试进一步提高我的知识。 / p>

所以我更新了python代码,添加了另一个端点,计数器,如下所示:

@app.route('/counter')
def counter():
    with open('counter.txt', 'a') as the_file:
        the_file.write('Hello\n')

    return 'Counter incremented'

我打算定期执行cron作业/ counter。当点击此端点时,它将打开文件并在其中添加一行。 / counter端点在我的本地计算机上工作。将更新后的代码部署到Google云后,如果我转到blahblah.appspot.com/counter网址,则应更新此“ counter.txt”文件。

我的问题是:如何查看该文件以了解其是否正在更新?如何在云端查看该文件?谢谢。

3 个答案:

答案 0 :(得分:2)

/tmp目录外,无法在Google App Engine标准Python3环境中写入文件。如the Python3 GAE official documentation中所述:

  

运行时包括完整的文件系统。文件系统为只读文件,但位置/tmp除外,该位置是在App Engine实例的RAM中存储数据的虚拟磁盘。

我同意@Josh J的回答,您应该改用Google Cloud Storage。

答案 1 :(得分:1)

您不应在Google App Engine中写入本地文件系统。缩放时,它可能对您的应用程序可见或不可见。

Google Cloud Storage是首选的文件存储方法。

https://cloud.google.com/appengine/docs/standard/python3/using-cloud-storage

答案 2 :(得分:0)

对于python 2.7,您可以从字符串而不是文件导入模块,您可以在此答案中看到: https://stackoverflow.com/a/7548190/8244338