ড্রাইভ API v2 এবং v3 তুলনা নির্দেশিকা

সর্বশেষ Google Drive API সংস্করণটি v3। v3-তে পারফরম্যান্স আরও ভালো কারণ অনুসন্ধানগুলি কেবল ক্ষেত্রগুলির একটি উপসেট প্রদান করে। আপনার v2 সংগ্রহের প্রয়োজন না হলে বর্তমান সংস্করণটি ব্যবহার করুন। আপনি যদি v2 ব্যবহার করেন, তাহলে v3-তে স্থানান্তর করার কথা বিবেচনা করুন। স্থানান্তর করতে, ড্রাইভ API v3-তে স্থানান্তর করুন দেখুন। সংস্করণের পার্থক্যগুলির সম্পূর্ণ তালিকার জন্য, ড্রাইভ API v2 এবং v3 তুলনা রেফারেন্স দেখুন।

যদি আপনি v2 ব্যবহার চালিয়ে যেতে চান, তাহলে v3 গাইডের কিছু নির্দেশাবলী v2 ডেভেলপারদের জন্য কীভাবে সংশোধন করতে হবে তা জানতে গাইড টু ড্রাইভ API v2 সংশোধন দেখুন।

ড্রাইভ এপিআই ভি৩ উন্নতি সম্পর্কে আরও জানতে, আপনি গুগল ইঞ্জিনিয়ারদের নতুন এপিআই ডিজাইন নিয়ে আলোচনা করা নিম্নলিখিত ভিডিওটি দেখতে পারেন।

V3 উন্নতি

কর্মক্ষমতা অপ্টিমাইজ করতে এবং API আচরণের জটিলতা কমাতে, v3 পূর্ববর্তী API সংস্করণের তুলনায় এই উন্নতিগুলি প্রদান করে:

  • ফাইল এবং শেয়ার্ড ড্রাইভ অনুসন্ধান করলে ডিফল্টরূপে সম্পূর্ণ রিসোর্স ফেরত পাওয়া যায় না, শুধুমাত্র সাধারণভাবে ব্যবহৃত ফিল্ডের একটি উপসেট ফেরত পাওয়া যায়। fields সম্পর্কে আরও বিস্তারিত জানার জন্য, files.list পদ্ধতি এবং drives.list পদ্ধতি দেখুন।
  • এখন প্রায় সকল পদ্ধতিতে প্রতিক্রিয়া প্রদানের জন্য fields প্যারামিটার প্রয়োজন। fields প্রয়োজন এমন সকল পদ্ধতির তালিকার জন্য, Drive API রেফারেন্স দেখুন।
  • ডুপ্লিকেট ক্ষমতা সম্পন্ন রিসোর্সগুলি সরানো হয়েছে। কিছু উদাহরণ:
    • files.list পদ্ধতিটি Children and Parents সংগ্রহের মতো একই কার্যকারিতা সম্পন্ন করে, তাই এগুলি v3 থেকে সরানো হয়।
    • Realtime.* পদ্ধতিগুলি সরানো হয়েছে।
  • অ্যাপ ডেটা ডিফল্টভাবে অনুসন্ধানে ফেরত পাঠানো হয় না। v2-তে, আপনি drive.appdata স্কোপ সেট করতে পারেন, এবং এটি files.list পদ্ধতি এবং changes.list পদ্ধতি থেকে অ্যাপ্লিকেশন ডেটা ফেরত পাঠায়, কিন্তু এটি কর্মক্ষমতা ধীর করে দেয়। v3-তে, আপনি drive.appdata স্কোপ সেট করেন এবং অ্যাপ্লিকেশন ডেটা অনুরোধ করার জন্য কোয়েরি প্যারামিটার spaces=appDataFolder ও সেট করেন।
  • সমস্ত আপডেট অপারেশন PUT এর পরিবর্তে PATCH ব্যবহার করে।
  • গুগল ডকুমেন্টস এক্সপোর্ট করতে, files.export পদ্ধতিটি ব্যবহার করুন।
  • changes.list পদ্ধতির আচরণ ভিন্ন। পরিবর্তন আইডির পরিবর্তে, অস্বচ্ছ পৃষ্ঠা টোকেন ব্যবহার করুন। পরিবর্তন সংগ্রহের জরিপ করতে, প্রথমে প্রাথমিক মানের জন্য changes.getStartPageToken পদ্ধতিতে কল করুন। পরবর্তী প্রশ্নের জন্য, changes.list পদ্ধতিটি newStartPageToken মান প্রদান করে।
  • আপডেট পদ্ধতিগুলি এখন অ-লিখনযোগ্য ক্ষেত্রগুলি নির্দিষ্ট করে এমন অনুরোধগুলি প্রত্যাখ্যান করে।
  • about রিসোর্সে v2 exportFormats এবং importFormats ক্ষেত্রগুলি হল অনুমোদিত আমদানি বা রপ্তানি ফর্ম্যাটের তালিকা। v3 তে, এগুলি হল সমস্ত সমর্থিত আমদানি বা রপ্তানির সম্ভাব্য লক্ষ্যগুলির MIME টাইপ মানচিত্র।
  • v2 appdata এবং appfolder উপনামগুলি এখন v3-তে appDataFolder
  • v3 থেকে properties রিসোর্সটি সরানো হয়েছে। files রিসোর্সে properties ফিল্ড রয়েছে যেখানে true key-value pairs রয়েছে। properties ফিল্ডে public properties রয়েছে এবং appProperties ফিল্ডে private properties রয়েছে, তাই visibility ফিল্ডের প্রয়োজন নেই।
  • files রিসোর্সে modifiedTime ফিল্ডটি শেষবার যখন কেউ ফাইলটি পরিবর্তন করেছিল তখন আপডেট হয়। v2 তে, modifiedDate ফিল্ডটি শুধুমাত্র তখনই পরিবর্তনযোগ্য ছিল যদি আপনি setModifiedDate ফিল্ডটি সেট করেন।
  • files রিসোর্সে viewedByMeTime ফিল্ডটি স্বয়ংক্রিয়ভাবে আপডেট হয় না।
  • Google ডক্স ফর্ম্যাটগুলি আমদানি করতে, আপনাকে রিসোর্স বডিতে উপযুক্ত লক্ষ্য mimeType সেট করতে হবে। v2 তে, আপনি ?convert=true সেট করতে হবে।
  • যদি ফর্ম্যাটটি সমর্থিত না হয় তবে আমদানি ক্রিয়াকলাপগুলি 400 ত্রুটি ফেরত দেয়।
  • পাঠক এবং মন্তব্যকারীরা অনুমতি দেখতে পারবেন না।
  • অনুমতির জন্য me উপনামটি সরানো হয়েছে।
  • কিছু কার্যকারিতা অনুরোধ রিসোর্সের অংশ হিসেবে উপলব্ধ ছিল কিন্তু পরিবর্তে একটি অনুরোধ প্যারামিটার হিসেবে উপলব্ধ। উদাহরণস্বরূপ:
    • v2 তে, আপনি children.delete ব্যবহার করে প্যারেন্ট ফোল্ডার থেকে চাইল্ড ফাইলটি সরাতে পারেন।
    • v3 তে, আপনি URL-এ ?removeParents=parent_id দিয়ে চাইল্ডে files.update ব্যবহার করেন।

অন্যান্য পার্থক্য

v3-তে ফিল্ড এবং প্যারামিটারের নাম আলাদা। কিছু উদাহরণের মধ্যে রয়েছে:

  • files রিসোর্সে name প্রোপার্টিটি title প্রতিস্থাপন করে।
  • Date এর পরিবর্তে সকল তারিখ এবং সময় ক্ষেত্রের জন্য Time হল প্রত্যয়।
  • তালিকার ক্রিয়াকলাপগুলি ফলাফল সেট ধারণ করার জন্য items ক্ষেত্র ব্যবহার করে না। রিসোর্সের ধরণ ফলাফলের জন্য একটি ক্ষেত্র প্রদান করে (যেমন files বা changes )।