亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Google Cloud Storage 不會更新現有的默認 Content-Disposition

Google Cloud Storage 不會更新現有的默認 Content-Disposition

C#
慕少森 2022-01-09 16:56:53
Disposition 屬性創建/更新谷歌云存儲對象元數據時,它是添加一個新屬性而不是更新現有的 Content-Disposition。請參見下圖。我的目標是在下載對象時提供不同的名稱。當我手動更新 Content-Disposition 時,它按預期工作。我正在使用 .NET 客戶端庫,下面是代碼string fileNameWithExt = "filename.txt";            using (var stream = file.InputStream)            {                var obj = new Google.Apis.Storage.v1.Data.Object                {                    Bucket = bucketName,                    Name = fileName,                    ContentType = "application/octet-stream",                    Metadata = new Dictionary<string, string>                        {                            { "Content-Disposition", $"attachment; filename={fileNameWithExt}" }                        }                };                var gcsObject = storage.UploadObject(obj, stream);                var patchObject = new Google.Apis.Storage.v1.Data.Object                {                    Bucket = bucketName,                    Name = fileName,                    //ContentType = "text/plain",                    Metadata = new Dictionary<string, string>                    {                        { "Content-Disposition", $"attachment; filename={fileNameWithExt}" }                    }                };                storage.PatchObject(patchObject);
查看完整描述

1 回答

?
繁花不似錦

TA貢獻1851條經驗 獲得超4個贊

GCS 對象具有多種屬性,包括它們的名稱、它們的內容類型,以及如您所指出的內容處置。但是,它們還有另一個屬性:任意用戶元數據。這是字符串的鍵值對列表,可以包含您喜歡的任何內容。


C# 庫調用自定義用戶元數據鍵值字典Metadata。通過使用該屬性,您的代碼將使用“Content-Disposition”鍵創建自定義用戶元數據條目。而是使用ContentDisposition值。像這樣的東西:


var patchObject = new Google.Apis.Storage.v1.Data.Object

{

    Bucket = bucketName,

    Name = fileName,

    ContentDisposition = $"attachment; filename={fileNameWithExt}" 

}

此外,如果您正在編寫新的 C# 代碼,我推薦更新且更易于使用的 google-cloud .NET 庫:https : //googlecloudplatform.github.io/google-cloud-dotnet/


查看完整回答
反對 回復 2022-01-09
  • 1 回答
  • 0 關注
  • 197 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號