وقتی کاربر روی دکمه «جدید» در واسط کاربر Drive کلیک میکند و برنامهای را در واسط کاربر Drive انتخاب میکند، Drive کاربر را به «نشانی وب جدید» آن برنامه که در پیکربندی ادغام واسط کاربر Drive تعریف شده است هدایت میکند.
سپس برنامه شما مجموعهای پیشفرض از متغیرهای الگو را در پارامتر
state دریافت میکند. اطلاعات پیشفرض state
برای «نشانی وب جدید» عبارت است از:
{
"action":"create",
"folderId":"FOLDER_ID",
"folderResourceKey":"FOLDER_RESOURCE_KEY",
"userId":"USER_ID"
}
این خروجی شامل مقادیر زیر است:
create: کنشی که درحال انجام است. وقتی کاربر روی دکمه «جدید» رابط کاربری Drive کلیک میکند، مقدارcreateاست.- FOLDER_ID: شناسه پوشه اصلی.
- FOLDER_RESOURCE_KEY: کلید منبع پوشه اصلی.
- USER_ID: شناسه نمایه که بهطور منحصربهفرد کاربر را شناسایی میکند.
برنامهتان باید با دنبال کردن این مراحل به این درخواست پاسخ دهد:
- بررسی کنید که فیلد
actionدارای مقدارcreateباشد. - از مقدار
userIdبرای ایجاد جلسه جدید برای کاربر استفاده کنید. برای اطلاعات بیشتر درباره کاربران واردشده به سیستم، به کاربران و رویدادهای جدید مراجعه کنید. - از روش
files.createبرای ایجاد منبع فایل استفاده کنید. اگرfolderIdدر درخواست تنظیم شده بود، فیلدparentsرا روی مقدارfolderIdتنظیم کنید. - اگر
folderResourceKeyدر درخواست تنظیم شده است، سرایند درخواستX-Goog-Drive-Resource-Keysرا تنظیم کنید. برای اطلاعات بیشتر درباره کلیدهای منبع، به دسترسی به فایلهای همرسانیشده با پیوند بااستفاده از کلیدهای منبع مراجعه کنید.
پارامتر state بهصورت URL-encoded است، بنابراین برنامهتان باید نویسههای گریز را مدیریت کند و آن را بهعنوان JSON تجزیه کند.
کاربران و رویدادهای جدید
برنامههای Drive باید همه رویدادهای «ایجاد» را بهعنوان ورود به سیستم احتمالی درنظر بگیرند. برخیاز کاربران ممکن است چند حساب داشته باشند، بنابراین شناسه کاربر در پارامتر state
ممکن است با جلسه فعلی مطابقت نداشته باشد. اگر شناسه کاربر در پارامتر state با جلسه فعلی مطابقت ندارد، جلسه فعلی را برای برنامهتان بهپایان برسانید و بهعنوان کاربر درخواستشده به سیستم وارد شوید.