Cloud Storage 错误和错误处理

使用 App Engine 的 UrlFetch 功能,您可以访问 Google Cloud Storage。因此,可能存在的错误有三种:

  • App Engine UrlFetch 暂时性错误。
  • Google Cloud Storage 暂时性错误。
  • 与存储分区和对象授权相关的 Google Cloud Storage 错误。

适用于 Cloud Storage 的 App Engine 客户端库会自动处理 App Engine 端和 Google Cloud Storage 端的超时错误并执行重试,因此您无需为应用添加逻辑来处理此问题。您可以通过 RetryParams 类公开超时和重试机制的配置,该类可用于更改任意或全部默认设置。通过该函数的 retry_params 参数,您可以将更改应用于所有函数调用或为特定调用指定更改。

错误

适用于 Cloud Storage 的 App Engine 客户端库定义了以下错误异常类:

cloudstorage.Error

此包中所有异常的基类。错误既可能产生自 App Engine ,也可能产生自 Google Cloud Storage。如需详细了解来自 Google Cloud Storage 的 HTTP 错误代码,请参阅 Google Cloud Storage 文档中的 HTTP 状态和错误代码

cloudstorage.AuthorizationError
Google Cloud Storage 收到未经授权的请求。如果已获授权的应用使用的访问令牌已过期,则会发生此错误。通常,此错误会在适用于 Cloud Storage 的 App Engine 客户端库中自动处理,该客户端库会获取新的访问令牌并重试请求。
cloudstorage.ForbiddenError

此错误 (403) 表示用户未获得 Google Cloud Storage 的授权,无法发出请求。

cloudstorage.NotFoundError
HTTP 错误 404。该错误表示您在对 cloudstorage.delete()cloudstorage.listbucket()cloudstorage.open()cloudstorage.stat() 的调用中指定的存储分区或对象不存在。
cloudstorage.TimeoutError
如果尝试连接 Google Cloud Storage 服务器超时,重试后仍失败,则会引发此错误。如需了解如何更改默认超时处理和重试,请参阅 RetryParams