ادغام با Drive UI "جدید» دکمه

وقتی کاربر روی دکمه «جدید» در رابط کاربری درایو کلیک می‌کند و برنامه‌ای را در رابط کاربری درایو انتخاب می‌کند، درایو کاربر را به آدرس اینترنتی جدید آن برنامه که در بخش «پیکربندی ادغام رابط کاربری درایو» تعریف شده است، هدایت می‌کند.

سپس برنامه شما مجموعه‌ای پیش‌فرض از متغیرهای قالب را در یک پارامتر state دریافت می‌کند. اطلاعات پیش‌فرض state برای یک URL جدید به صورت زیر است:

{
  "action":"create",
  "folderId":"FOLDER_ID",
  "folderResourceKey":"FOLDER_RESOURCE_KEY",
  "userId":"USER_ID"
}

این خروجی شامل مقادیر زیر است:

  • create : عملی که انجام می‌شود. مقدار create زمانی که کاربر روی دکمه "New" در رابط کاربری Drive کلیک می‌کند، نمایش داده می‌شود.
  • FOLDER_ID : شناسه پوشه والد.
  • FOLDER_RESOURCE_KEY : کلید منبع پوشه‌ی والد.
  • USER_ID : شناسه پروفایل که به طور منحصر به فرد کاربر را شناسایی می‌کند.

برنامه شما باید با دنبال کردن مراحل زیر به این درخواست پاسخ دهد:

  1. تأیید کنید که فیلد action دارای مقدار create است.
  2. از مقدار userId برای ایجاد یک جلسه جدید برای کاربر استفاده کنید. برای اطلاعات بیشتر در مورد کاربران وارد شده، به بخش کاربران و رویدادهای جدید مراجعه کنید.
  3. از متد files.create برای ایجاد یک منبع فایل استفاده کنید. اگر در درخواست، folderId تنظیم شده بود، فیلد parents را روی مقدار folderId تنظیم کنید.
  4. اگر در درخواست، folderResourceKey تنظیم شده بود، هدر درخواست X-Goog-Drive-Resource-Keys را تنظیم کنید. برای اطلاعات بیشتر در مورد کلیدهای منبع، به دسترسی به فایل‌های اشتراک‌گذاری شده با لینک با استفاده از کلیدهای منبع مراجعه کنید.

پارامتر state توسط URL کدگذاری شده است، بنابراین برنامه شما باید کاراکترهای escape را مدیریت کرده و آن را به صورت JSON تجزیه کند.

کاربران و رویدادهای جدید

برنامه‌های Drive باید تمام رویدادهای «ایجاد» را به عنوان ورودهای احتمالی در نظر بگیرند. برخی از کاربران ممکن است چندین حساب کاربری داشته باشند، بنابراین شناسه کاربری در پارامتر state ممکن است با جلسه فعلی مطابقت نداشته باشد. اگر شناسه کاربری در پارامتر state با جلسه فعلی مطابقت ندارد، جلسه فعلی برنامه خود را پایان دهید و به عنوان کاربر درخواستی وارد سیستم شوید.