“ IOError:[Errno 30]只读文件系统”在Google App Engine中出现错误

问题描述 投票:0回答:1

我在Flask中有一个函数,它可以进行一些Web抓取并将内容放入HTML文件中。

@app.route('/something')
def something():
    web_scraping()
    return render_template('myFile.html')

[C0函数将一些HTML代码输出到web_scraping,并且在本地运行时效果很好,但是当我将其放在Google App Engine上时,出现此错误:

myFile.html
python google-app-engine flask ioerror
1个回答
1
投票

IOError: [Errno 30] Read-only file system: 'templates/myFile.html'

为什么我不能写这个文件?

由于以下原因,App Engine不支持写入本地文件应用程序的分布式性质。相反,必须持久化应存储在分布式数据存储中。欲了解更多信息,请参阅运行时沙箱上的文档

但是,您仍然可以编写文件:

在App Engine中,您的应用程序已部署的本地文件系统to是不可写的。此行为可确保安全性和您的应用程序的可伸缩性。

但是,如果应用程序需要在运行时写入和读取文件,App Engine提供了内置的Google Cloud Storage流包装器允许您使用许多标准的PHP文件系统功能在App Engine PHP应用程序中读写文件。

© www.soinside.com 2019 - 2024. All rights reserved.