创建文件夹,谷歌云存储桶.NET客户端库

问题描述:

我期待在使用方式下客户端库创建一个水桶里面的文件夹: https://cloud.google.com/storage/docs/json_api/v1/json-api-dotnet-samples创建文件夹,谷歌云存储桶.NET客户端库

我看了下面的线程,看来我需要使用简单的方法上传。 Creating folder in bucket google cloud storage using php

我看不到任何能够指定uploadtype的方式,所有请求都显示为uploadType=resumable

看着上面的帖子和提琴手跟踪我需要使用uploadType=media。有没有做到这一点?

这对我有效!不知道这是否是正确的做法,但这方面还不够。

public void CreateDir(string FolderName) 
    { 
     if (!FolderName.EndsWith("/")) 
      FolderName += "/"; 

     var uploadStream = new MemoryStream(Encoding.UTF8.GetBytes("")); 
     Storage.Objects.Insert(
      bucket: BucketName, 
      stream: uploadStream, 
      contentType: "application/x-directory", 
      body: new Google.Apis.Storage.v1.Data.Object() { Name = FolderName} 
      ).Upload(); 
    } 

编辑:刚刚发现,你可以直接将文件上传到你的目标对象,如果目录/子目录不存在上传功能将创建它们。

在API的最新版本中执行此操作稍微直截了当。 您仍然需要确保您检查Salem建议的“/”。

 public void AddFolder(string folder) 
     { 
      StorageClient storageClient = StorageClient.Create(); 
      if (!FolderName.EndsWith("/")) 
      FolderName += "/";   

      var content = Encoding.UTF8.GetBytes(""); 

      storageClient.UploadObject(bucketName, folder, "application/x-directory", new MemoryStream(content)); 

     }