【发布时间】:2019-12-04 15:56:19
【问题描述】:
我有一个从 Cloud Storage 读取文件的 PHP 脚本。它在本地开发中运行良好。但是当它在 App Engine 标准环境中运行时,它会输出以下错误消息:
Fatal error: Uncaught Google\Cloud\Core\Exception\ServiceException in /srv/vendor/google/cloud/Core/src/RequestWrapper.php:362
Stack trace:
#0 /srv/vendor/google/cloud/Core/src/RequestWrapper.php(206): Google\Cloud\Core\RequestWrapper->convertToGoogleException(Object(GuzzleHttp\Exception\RequestException))
#1 /srv/vendor/google/cloud/Storage/src/Connection/Rest.php(224): Google\Cloud\Core\RequestWrapper->send(Object(GuzzleHttp\Psr7\Request), Array)
#2 /srv/vendor/google/cloud/Storage/src/StorageObject.php(643): Google\Cloud\Storage\Connection\Rest->downloadObject(Array)
#3 /srv/vendor/google/cloud/Storage/src/StorageObject.php(574): Google\Cloud\Storage\StorageObject->downloadAsStream(Array)
#4 /srv/modules/profile/controllers/getresource.class.php(69): Google\Cloud\Storage\StorageObject->downloadAsString()
大多数文件不会发生这种情况。导致此问题的文件约为 250KB。我想知道 downloadAsString() 是否存在某种大小限制?
【问题讨论】:
-
此错误与您的代码处理异常中的未命中有关。请提供一些代码以了解我们如何为您提供帮助
-
$e->getMessage() 返回空字符串。
-
你在代码中实现了重试方法吗?也许捕捉到异常,然后重试下载有问题的文件
-
第一步是满足 StackOverflow 发布问题的要求。查看此链接以改进您的问题:stackoverflow.com/help/minimal-reproducible-example
标签: php google-cloud-platform google-cloud-storage