谷歌云存储api(c#)-缓存头元数据

谷歌云存储api(c#)-缓存头元数据,c#,google-cloud-storage,C#,Google Cloud Storage,我通过存储c#api(google.cloud.storage.V1)上传到谷歌云存储桶。这些是客户端页面访问的公共文件 问题: 文件以“专用,最大年龄=0”发送 问题: 我想在通过api本身上传文件时或之后设置自定义缓存头。是否可以通过c#google storage api调用发送缓存头或其他元数据 我也很好奇:既然我没有设置任何缓存头,为什么google storage为这些文件提供max age=0的服务,而不是根本不发送任何缓存头?如果您指定一个对象,而不仅仅是bucket name和

我通过存储c#api(google.cloud.storage.V1)上传到谷歌云存储桶。这些是客户端页面访问的公共文件

问题: 文件以“专用,最大年龄=0”发送

问题: 我想在通过api本身上传文件时或之后设置自定义缓存头。是否可以通过c#google storage api调用发送缓存头或其他元数据


我也很好奇:既然我没有设置任何缓存头,为什么google storage为这些文件提供max age=0的服务,而不是根本不发送任何缓存头?

如果您指定一个
对象,而不仅仅是bucket name和Object name,那么您可以在调用
UploadObject
时设置缓存控件。下面是一个例子:

var client=StorageClient.Create();
var obj=new Google.api.Storage.v1.Data.Object
{
Bucket=bucketId,
Name=objectName,
CacheControl=“public,最大年龄=3600”
};
var stream=newmemoryStream(Encoding.UTF8.GetBytes(“Hello world”);
上载对象(obj,流);
您也可以在事后使用
PatchObject

var patch=new Google.api.Storage.v1.Data.Object
{
Bucket=bucketId,
Name=objectName,
CacheControl=“public,最大年龄=7200”
};
client.PatchObject(补丁);
我不知道缓存控制的细节,但如果你没有指定任何东西,我恐怕