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