云端存储的go客户端的一些Google documentation说:
该库支持读取和写入大量数据到云存储,具有内部错误处理和重试,因此您不必编写自己的代码来执行此操作。
但是,当使用以下代码片段将对象PUT归云存储时,偶尔会向我返回503 Service Unavailable错误。
重新启动云存储请求的逻辑位于何处?
conf, err := google.JWTConfigFromJSON([]byte(apiKey),storage.ScopeFullControl)
if err != nil {
panic(err)
}
ctx := cloud.NewContext(projectId, conf.Client(oauth2.NoContext))
writer := storage.NewWriter(self.ctx, Bucket, key)
_, err := writer.Write(data)
if err != nil {
return err
}
答案 0 :(得分:0)
正如格伦·刘易斯在GCloud issue(2月20日)所述:
我们正在google-api-go-client上进行ResumableMedia上传 库,只是从它停止的地方重试以防万一 在转移过程中失败了。我希望这应该解决 这个问题,但我没有约会时间 准备就绪,因为有持续的设计讨论。
目前在源代码中没有引用ResumableMedia
,因此文档似乎是错误的。请注意,storage
包是实验性的。