وقتی کاربر فایلی را انتخاب میکند و روی آیتم منوی «باز کردن با» رابط کاربری Drive کلیک میکند، Drive کاربر را به URL باز آن برنامه که در پیکربندی یکپارچهسازی رابط کاربری Drive تعریف شده است هدایت میکند.
اگر هنگام پیکربندی یکپارچهسازی رابط کاربری Drive، کادر «وارد کردن» را علامت زده باشید، کاربر میتواند ترکیبی از فایلهای مخصوص برنامه و Google Workspace را برای باز کردن انتخاب کند. وقتی یکپارچگی Drive UI را پیکربندی میکنید، فایلهای مخصوص برنامه در قسمتهای «انواع MIME پیشفرض» و «افزونههای فایل پیشفرض» تعریف میشوند، در حالی که فایلهای Google Workspace در قسمتهای «انواع MIME ثانویه» و «افزونههای فایل ثانویه» تعریف میشوند.
برای هر فایلی که کاربر می خواهد باز کند، Drive انواع MIME را در مقابل انواع MIME پیش فرض و ثانویه تعریف شده شما بررسی می کند:
برای انواع MIME که در قسمت «انواع پیشفرض MIME» تعریف شدهاند، شناسه فایل به برنامه شما ارسال میشود. برای اطلاعات در مورد نحوه مدیریت فایلهای خاص برنامه، به مدیریت یک URL باز برای اسناد خاص برنامه مراجعه کنید.
برای انواع MIME که در قسمت "انواع MIME ثانویه" تعریف شده اند، رابط کاربری Drive یک گفتگو را نشان می دهد که از کاربر می پرسد فایل Google Workspace را به چه نوع فایلی تبدیل کند. به عنوان مثال، اگر یک فایل Google Docs را در رابط کاربری Drive انتخاب کنید و فیلد «انواع MIME ثانویه» نشان دهد که برنامه شما از text/plain یا application/pdf پشتیبانی میکند، رابط کاربری Drive از کاربر میپرسد که آیا میخواهد به متن ساده یا PDF تبدیل شود. .
برای کسب اطلاعات در مورد نحوه مدیریت فایلهای Google Workspace، به مدیریت یک URL باز برای اسناد Google Workspace مراجعه کنید. برای فهرستی از اسناد Google Workspace و قالبهای تبدیل نوع MIME، صادرات انواع MIME برای اسناد Google Workspace را ببینید.
یک URL باز برای اسناد خاص برنامه مدیریت کنید
همانطور که در Configure a Drive UI integration ذکر شد، برنامه شما متغیرهای الگو را با اطلاعاتی برای برنامه شما دریافت می کند تا فایل را باز کند. برنامه شما مجموعه ای پیش فرض از متغیرهای الگو را در یک پارامتر state
دریافت می کند. اطلاعات state
پیشفرض برای یک URL باز ویژه برنامه عبارت است از:
{
"ids": ["ID"],
"resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
"action":"open",
"userId":"USER_ID"
}
این خروجی شامل مقادیر زیر است:
- ID : شناسه پوشه والد.
- RESOURCE_KEYS : یک فرهنگ لغت JSON از شناسههای فایل که به کلیدهای منبع مربوطه نگاشت شده است.
-
open
: عمل در حال انجام. هنگام استفاده از URL باز، مقدارopen
است. - USER_ID : شناسه نمایه ای که به طور منحصر به فرد کاربر را شناسایی می کند.
برنامه شما باید با دنبال کردن این مراحل به این درخواست عمل کند:
- بررسی کنید که مقدار فیلد
action
open
باشد و فیلدids
موجود باشد. - از مقدار
userId
برای ایجاد یک جلسه جدید برای کاربر استفاده کنید. برای اطلاعات بیشتر درباره کاربرانی که وارد سیستم شدهاند، به کاربران و رویدادهای جدید مراجعه کنید. - از روش
files.get
برای بررسی مجوزها، واکشی فراداده فایل و دانلود محتوای فایل با استفاده از مقادیرID
استفاده کنید. - اگر
resourceKeys
روی درخواست تنظیم شده بود، سرصفحه درخواستX-Goog-Drive-Resource-Keys
را تنظیم کنید. برای اطلاعات بیشتر در مورد کلیدهای منبع، به دسترسی به فایلهای پیوند مشترک با استفاده از کلیدهای منبع مراجعه کنید.
پارامتر state
با URL رمزگذاری شده است، بنابراین برنامه شما باید کاراکترهای فرار را کنترل کند و آن را به عنوان JSON تجزیه کند.
یک URL باز برای اسناد Google Workspace مدیریت کنید
همانطور که در Configure a Drive UI ادغام ذکر شد، برنامه شما مجموعه ای پیش فرض از متغیرهای الگو را در یک پارامتر state
دریافت می کند. اطلاعات state
پیشفرض برای URL باز Google Workspace عبارتند از:
{
"exportIds": ["ID"],
"resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
"action":"open",
"userId":"USER_ID"
}
این خروجی شامل مقادیر زیر است:
- EXPORT_ID : فهرستی از شناسههای فایل که با کاما جدا شدهاند (فقط هنگام باز کردن اسناد داخلی Google استفاده میشود).
- RESOURCE_KEYS : یک فرهنگ لغت JSON از شناسههای فایل که به کلیدهای منبع مربوطه نگاشت شده است.
-
open
: عمل در حال انجام. هنگام استفاده از URL باز، مقدارopen
است. - USER_ID : شناسه نمایه ای که کاربر را شناسایی می کند.
برنامه شما باید با دنبال کردن این مراحل به این درخواست عمل کند:
بررسی کنید که این درخواست برای باز کردن یک فایل با تشخیص مقدار
open
در فیلدstate
و وجود فیلدexportIds
است.از روش
files.get
برای بررسی مجوزها، واکشی فراداده فایل و تعیین نوع MIME با استفاده از مقادیرEXPORT_ID
استفاده کنید.محتوای فایل را با استفاده از روش
files.export
تبدیل کنید. نمونه کد زیر نحوه صادر کردن یک سند Google Workspace را به نوع MIME درخواستی نشان می دهد.اگر
resourceKey
روی درخواست تنظیم شده بود، هدر درخواستX-Goog-Drive-Resource-Keys
را تنظیم کنید. برای اطلاعات بیشتر در مورد کلیدهای منبع، به دسترسی به فایلهای پیوند مشترک با استفاده از کلیدهای منبع مراجعه کنید.جاوا
پایتون
Node.js
PHP
فایل های تبدیل شده را به صورت فقط خواندنی نمایش دهید یا یک گفتگو ارائه دهید که به کاربر اجازه می دهد فایل را به عنوان نوع فایل جدید ذخیره کند.
پارامتر state
با URL رمزگذاری شده است، بنابراین برنامه شما باید کاراکترهای فرار را کنترل کند و آن را به عنوان JSON تجزیه کند.
کاربران و رویدادهای جدید
برنامههای Drive باید همه رویدادهای «باز با» را بهعنوان ورود به سیستم بالقوه در نظر بگیرند. برخی از کاربران ممکن است چندین حساب داشته باشند، بنابراین شناسه کاربری در پارامتر state
ممکن است با جلسه فعلی مطابقت نداشته باشد. اگر شناسه کاربری در پارامتر state
با جلسه فعلی مطابقت ندارد، جلسه فعلی را برای برنامه خود پایان دهید و به عنوان کاربر درخواستی وارد سیستم شوید.
موضوعات مرتبط
علاوه بر باز کردن یک برنامه از رابط کاربری Google Drive، برنامهها میتوانند یک انتخابگر فایل برای انتخاب محتوا از داخل یک برنامه نمایش دهند. برای اطلاعات بیشتر، Google Picker را ببینید.