Cloud Storage রেফারেন্সে একটি ফাইল আপলোড করার পরে, আপনি ফাইল মেটাডেটা পেতে এবং আপডেট করতে পারেন, উদাহরণস্বরূপ বিষয়বস্তুর প্রকার আপডেট করতে। ফাইলগুলি অতিরিক্ত ফাইল মেটাডেটা সহ কাস্টম কী/মান জোড়া সঞ্চয় করতে পারে।
ফাইল মেটাডেটা পান
ফাইল মেটাডেটাতে ContentDisposition
এবং CreationTimeMillis
মত কিছু কম সাধারণ বৈশিষ্ট্য ছাড়াও Name
, SizeBytes
, এবং ContentType
(প্রায়শই MIME প্রকার হিসাবে উল্লেখ করা হয়) এর মতো সাধারণ বৈশিষ্ট্য রয়েছে। এই মেটাডেটা GetMetadataAsync
পদ্ধতি ব্যবহার করে একটি Cloud Storage রেফারেন্স থেকে পুনরুদ্ধার করা যেতে পারে।
// Create reference to the file whose metadata we want to retrieve StorageReference forestRef = storageRef.Child("images/forest.jpg"); // Get metadata properties forestRef.GetMetadataAsync().ContinueWithOnMainThread(task => { if (!task.IsFaulted && !task.IsCanceled) { StorageMetadata meta = task.Result; // do stuff with meta } });
ফাইল মেটাডেটা আপডেট করুন
UpdateMetadataAsync
পদ্ধতি ব্যবহার করে ফাইল আপলোড সম্পূর্ণ হওয়ার পরে আপনি যে কোনো সময় ফাইল মেটাডেটা আপডেট করতে পারেন যা একটি MetadataChange
অবজেক্ট নেয়। কোন বৈশিষ্ট্যগুলি আপডেট করা যেতে পারে সে সম্পর্কে আরও তথ্যের জন্য সম্পূর্ণ তালিকাটি পড়ুন। শুধুমাত্র মেটাডেটাতে উল্লিখিত বৈশিষ্ট্যগুলি আপডেট করা হয়েছে, অন্য সবগুলি অপরিবর্তিত রাখা হয়েছে৷
// Create reference to the file whose metadata we want to change StorageReference forestRef = storageRef.Child("images/forest.jpg"); // Create file metadata to update var newMetadata = new MetadataChange(); newMetadata.CacheControl = "public,max-age=300"; newMetadata.ContentType = "image/jpeg"; // Update metadata properties forestRef.UpdateMetadataAsync(newMetadata).ContinueWithOnMainThread(task => { if (!task.IsFaulted && !task.IsCanceled) { // access the updated meta data StorageMetadata meta = task.Result; } });
আপনি খালি স্ট্রিং পাস করে লিখনযোগ্য মেটাডেটা বৈশিষ্ট্য মুছে ফেলতে পারেন:
// Create file metadata to update var newMetadata = new MetadataChange(); newMetadata.ContentType = ""; // Update metadata properties forestRef.UpdateMetadataAsync(newMetadata).ContinueWithOnMainThread(task => { if (!task.IsFaulted && !task.IsCanceled) { StorageMetadata meta = task.Result; // meta.ContentType should be an empty string now } });
হ্যান্ডেল ত্রুটি
মেটাডেটা পাওয়ার বা আপডেট করার সময় ত্রুটি ঘটতে পারে এমন অনেকগুলি কারণ রয়েছে, যার মধ্যে ফাইলটি বিদ্যমান নেই বা ব্যবহারকারীর পছন্দসই ফাইল অ্যাক্সেস করার অনুমতি নেই। ত্রুটিগুলি সম্পর্কে আরও তথ্য ডক্সের হ্যান্ডেল ত্রুটি বিভাগে পাওয়া যাবে৷
কাস্টম মেটাডেটা
আপনি একটি Dictionary<string, string>
হিসাবে কাস্টম মেটাডেটা নির্দিষ্ট করতে পারেন।
var newMetadata = new MetadataChange { CustomMetadata = new Dictionary<string, string> { {"location", "Yosemite, CA, USA"}, {"activity", "Hiking"} } }; // UpdateMetadataAsync
আপনি কাস্টম মেটাডেটাতে প্রতিটি ফাইলের জন্য অ্যাপ-নির্দিষ্ট ডেটা সঞ্চয় করতে পারেন, তবে আমরা এই ধরনের ডেটা সঞ্চয় এবং সিঙ্ক্রোনাইজ করার জন্য একটি ডাটাবেস (যেমন Firebase Realtime Database ) ব্যবহার করার পরামর্শ দিই।
ফাইল মেটাডেটা বৈশিষ্ট্য
একটি ফাইলে মেটাডেটা বৈশিষ্ট্যগুলির একটি সম্পূর্ণ তালিকা নীচে উপলব্ধ:
সম্পত্তি | টাইপ | মেটাডেটা চেঞ্জে পরিবর্তনযোগ্য |
---|---|---|
Bucket | string | না |
Generation | string | না |
MetadataGeneration | string | না |
Path | string | না |
Name | string | না |
SizeBytes | long | না |
CreationTimeMillis | long | না |
UpdatedTimeMillis | long | না |
CacheControl | string | হ্যাঁ |
ContentDisposition | string | হ্যাঁ |
ContentEncoding | string | হ্যাঁ |
ContentLanguage | string | হ্যাঁ |
ContentType | string | হ্যাঁ |
DownloadUrl | Uri | না |
DownloadUrls | IList<Uri> | না |
CustomMetadataKeys | IEnumerable<string> | হ্যাঁ |
পরবর্তী পদক্ষেপ
ফাইলগুলি আপলোড করা, ডাউনলোড করা এবং আপডেট করা গুরুত্বপূর্ণ, তবে সেগুলি সরাতে সক্ষম হচ্ছে৷ আসুন জেনে নিই Cloud Storage থেকে ফাইল মুছে ফেলার উপায়।