我正在尝试使用PHP从我的App Engine写入Google Cloud Storage存储桶中的文件 . 我已经按照文档设置了一个存储桶并通过PHP访问它:
-
https://developers.google.com/appengine/docs/python/googlestorage/index#Prerequisites
-
https://developers.google.com/appengine/docs/php/googlestorage/
我已将应用引擎的服务帐户名称添加为相关存储桶的所有者,但是当我尝试运行以下内容时:
$fp = fopen('gs://[bucket-name]/log/log.txt', 'a+');
我收到以下错误:
PHP Warning: fopen(gs://[bucket-name]/log.txt): failed to open stream:
"\google\appengine\ext\cloud_storage_streams\CloudStorageStreamWrapper::stream_open"
call failed in /[myfile.php] on line 33
[bucket-name]
只是一个占位符,我正在使用正确的存储桶名称 . 我错过了什么吗?
1 回答
a+
不是用于打开GCS文件的有效模式 . GCS中的对象无法追加到 . 它们只能被覆盖 . 您可以在此处找到有效模式:https://code.google.com/p/googleappengine/source/browse/trunk/python/php/sdk/google/appengine/ext/cloud_storage_streams/CloudStorageStreamWrapper.php?spec=svn404&r=400#56