云存储:无法使用golang在本地上传任何内容

时间:2018-06-18 05:07:55

标签: go google-cloud-platform google-cloud-storage

我有这段代码:

ctx:=context.Background()
    cliente, err := storage.NewClient(ctx)
    if err != nil {
        log.Fatal(err)
    }
    clienteCS := cliente.Bucket("prueba123456789")
    w:=clienteCS.Object("prueba").NewWriter(ctx)
    w.ContentType = "text/plain"
    if _, err := w.Write([]byte("abcde\n")); err != nil {
           log.Fatal(err)
    }
    attrs, err := clienteCS.Attrs(ctx)
    fmt.Printf("atrr: %+v   err:%v\n",attrs,err)

当我运行这个程序时,在控制台中我可以看到从我的存储桶打印的属性,这对我来说意味着配置没有任何问题 console ,但问题是,当我在console.cloud.google.com上看到时,我看到我的桶my bucket上没有文件,即使在api仪表板上也看起来没有任何api被调用(红线前的峰值是其他api我正在使用)api dashboard,即使我的控制台上没有显示可能表示出现问题的错误

1 个答案:

答案 0 :(得分:1)

我忘了关闭客户端,this page提醒此问题,始终必须关闭客户端或文件不会被发送,所以只需添加一些行:

if err := w.Close(); err != nil {
            log.Fatal(err)
            return
        }