সেরা ফলাফলের জন্য সর্বোত্তম অনুশীলন

গুগল ডক্স এপিআই ব্যবহার করার সময় আপনার বেশ কয়েকটি নীতি অনুসরণ করা উচিত। এর মধ্যে রয়েছে:

  • দক্ষতার জন্য উল্টোদিকে সম্পাদনা করুন
  • সহযোগিতার পরিকল্পনা
  • WriteControl ফিল্ড ব্যবহার করে স্টেট কনসিস্টিন্সিটি নিশ্চিত করুন।
  • ট্যাবগুলি বিবেচনায় নিন

নিম্নলিখিত বিভাগগুলি এই নীতিগুলি ব্যাখ্যা করে।

দক্ষতার জন্য উল্টোদিকে সম্পাদনা করুন

documents.batchUpdate পদ্ধতিতে একটি মাত্র কলের মাধ্যমে, আপনার অনুরোধগুলিকে সূচীর অবস্থানের অবরোহী ক্রমে সাজান। এর ফলে সন্নিবেশ এবং মুছে ফেলার কারণে সূচীর পরিবর্তনগুলি গণনা করার প্রয়োজন হয় না।

সহযোগিতার পরিকল্পনা

ডকুমেন্টের অবস্থা পরিবর্তন হবে বলে আশা করুন। একটি পদ্ধতি কল এবং অন্য পদ্ধতি কলের মধ্যে, অন্যান্য সহযোগীরা ডকুমেন্টটি আপডেট করতে পারে, যেমনটি নিম্নলিখিত চিত্রে দেখানো হয়েছে:

পদ্ধতি কলের মধ্যে একটি ডকুমেন্ট কীভাবে পরিবর্তন হতে পারে।

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

WriteControl এর সাথে স্টেট সামঞ্জস্য স্থাপন করুন

যখন আপনি একটি ডকুমেন্ট পড়েন এবং তারপর আপডেট করেন, তখন documents.batchUpdate পদ্ধতিতে WriteControl ক্ষেত্র ব্যবহার করে প্রতিযোগিতামূলক পরিবর্তনগুলি কীভাবে পরিচালনা করা হয় তার আচরণ নিয়ন্ত্রণ করতে পারেন। WriteControl কীভাবে লেখার অনুরোধগুলি কার্যকর করা হয় তার উপর কর্তৃত্ব প্রদান করে।

আপনি এটি কীভাবে ব্যবহার করবেন তা এখানে:

  1. documents.get পদ্ধতি ব্যবহার করে ডকুমেন্টটি পান এবং ফেরত documents রিসোর্স থেকে revisionId সংরক্ষণ করুন।
  2. আপনার আপডেটের অনুরোধগুলি রচনা করুন।
  3. দুটি বিকল্পের একটি সহ একটি ঐচ্ছিক WriteControl অবজেক্ট অন্তর্ভুক্ত করুন:
    1. requiredRevisionId ফিল্ডটি সেই ডকুমেন্টের revisionId আইডিতে সেট করা থাকে যেখানে লেখার অনুরোধ প্রয়োগ করা হয়েছে। যদি API রিড রিকোয়েস্টের পর থেকে ডকুমেন্টটি পরিবর্তন করা হয়, তাহলে লেখার অনুরোধটি প্রক্রিয়া করা হয় না এবং এটি একটি ত্রুটি ফেরত দেয়।
    2. targetRevisionId ফিল্ডটি সেই ডকুমেন্টের revisionId আইডিতে সেট করা আছে যেখানে লেখার অনুরোধ প্রয়োগ করা হয়েছে। যদি API রিড রিকোয়েস্টের পর থেকে ডকুমেন্টটি পরিবর্তন করা হয়, তাহলে লেখার অনুরোধের পরিবর্তনগুলি সহযোগী পরিবর্তনের বিরুদ্ধে প্রয়োগ করা হয়। লেখার অনুরোধের ফলাফলে লেখার অনুরোধের পরিবর্তন এবং সহযোগী পরিবর্তন উভয়ই ডকুমেন্টের একটি নতুন রিভিশনে অন্তর্ভুক্ত করা হয়। ডক্স সার্ভার কন্টেন্ট মার্জ করার জন্য দায়ী।

WriteControl ব্যবহার করে একটি ব্যাচ অনুরোধ কীভাবে তৈরি করবেন তার একটি উদাহরণের জন্য, এই ব্যাচ অনুরোধের উদাহরণটি দেখুন।

ট্যাবগুলি বিবেচনায় নিন

একটি একক নথিতে একাধিক ট্যাব থাকতে পারে, যার জন্য আপনার API অনুরোধগুলিতে নির্দিষ্ট হ্যান্ডলিং প্রয়োজন।

এখানে কী মনে রাখবেন:

  1. ডকুমেন্টের সকল ট্যাব থেকে কন্টেন্ট পুনরুদ্ধার করার জন্য documents.get পদ্ধতিতে includeTabsContent প্যারামিটারটিকে true তে সেট করুন। ডিফল্টরূপে, সমস্ত ট্যাব কন্টেন্ট ফেরত দেওয়া হয় না।
  2. documents.batchUpdate পদ্ধতিতে প্রতিটি Request প্রয়োগ করার জন্য ট্যাব(গুলি) এর আইডি(গুলি) নির্দিষ্ট করুন। প্রতিটি Request আপডেট প্রয়োগ করার জন্য ট্যাবগুলি নির্দিষ্ট করার একটি উপায় অন্তর্ভুক্ত থাকে। ডিফল্টরূপে, যদি কোনও ট্যাব নির্দিষ্ট না করা থাকে, তবে Request বেশিরভাগ ক্ষেত্রে নথির প্রথম ট্যাবে প্রয়োগ করা হবে। সুনির্দিষ্ট তথ্যের জন্য Request ডকুমেন্টেশন দেখুন।