যখন কোনো ব্যবহারকারী Drive UI-এর "New" বোতামে ক্লিক করে কোনো অ্যাপ নির্বাচন করেন, তখন Drive সেই ব্যবহারকারীকে "Configure a Drive UI integration" -এ সংজ্ঞায়িত সেই অ্যাপের New URL-এ পুনঃনির্দেশিত করে।
এরপর আপনার অ্যাপ একটি state প্যারামিটারের মধ্যে টেমপ্লেট ভেরিয়েবলের একটি ডিফল্ট সেট গ্রহণ করে। একটি নতুন URL-এর জন্য ডিফল্ট state তথ্য হলো:
{
"action":"create",
"folderId":"FOLDER_ID",
"folderResourceKey":"FOLDER_RESOURCE_KEY",
"userId":"USER_ID"
}
এই আউটপুটে নিম্নলিখিত মানগুলি অন্তর্ভুক্ত রয়েছে:
-
create: যে কাজটি করা হচ্ছে। যখন কোনো ব্যবহারকারী ড্রাইভ UI-এর "নতুন" বোতামে ক্লিক করেন, তখন এর মান হয়create। - FOLDER_ID : মূল ফোল্ডারের আইডি।
- FOLDER_RESOURCE_KEY : প্যারেন্ট ফোল্ডারের রিসোর্স কী।
- USER_ID : প্রোফাইল আইডি যা ব্যবহারকারীকে অনন্যভাবে শনাক্ত করে।
আপনার অ্যাপকে অবশ্যই নিম্নলিখিত ধাপগুলো অনুসরণ করে এই অনুরোধটির ওপর কাজ করতে হবে:
- যাচাই করুন যে
actionফিল্ডটির মান 'createআছে। - ব্যবহারকারীর জন্য একটি নতুন সেশন তৈরি করতে
userIdভ্যালুটি ব্যবহার করুন। সাইন-ইন করা ব্যবহারকারীদের সম্পর্কে আরও তথ্যের জন্য, ব্যবহারকারী ও নতুন ইভেন্টসমূহ দেখুন। - একটি ফাইল রিসোর্স তৈরি করতে
files.createমেথডটি ব্যবহার করুন। যদি রিকোয়েস্টেfolderIdসেট করা হয়ে থাকে, তাহলেparentsফিল্ডটিকেfolderIdভ্যালুটি দিয়ে সেট করুন। - অনুরোধে
folderResourceKeyসেট করা থাকলে,X-Goog-Drive-Resource-Keysঅনুরোধ হেডারটি সেট করুন। রিসোর্স কী সম্পর্কে আরও তথ্যের জন্য, রিসোর্স কী ব্যবহার করে লিঙ্ক-শেয়ার করা ফাইল অ্যাক্সেস করুন দেখুন।
state প্যারামিটারটি ইউআরএল-এনকোডেড, তাই আপনার অ্যাপকে অবশ্যই এস্কেপ ক্যারেক্টারগুলো হ্যান্ডেল করতে হবে এবং এটিকে JSON হিসেবে পার্স করতে হবে।
ব্যবহারকারী এবং নতুন ইভেন্ট
ড্রাইভ অ্যাপগুলোকে সমস্ত 'ক্রিয়েট' ইভেন্টকে সম্ভাব্য সাইন-ইন হিসেবে বিবেচনা করা উচিত। কিছু ব্যবহারকারীর একাধিক অ্যাকাউন্ট থাকতে পারে, তাই state প্যারামিটারে থাকা ইউজার আইডি বর্তমান সেশনের সাথে নাও মিলতে পারে। যদি state প্যারামিটারে থাকা ইউজার আইডি বর্তমান সেশনের সাথে না মেলে, তাহলে আপনার অ্যাপের জন্য বর্তমান সেশনটি শেষ করুন এবং অনুরোধ করা ব্যবহারকারী হিসেবে সাইন ইন করুন।