این یا یک روش احراز هویت دیگر باید قبل از ee.initialize() فراخوانی شود.
توجه داشته باشید که اگر کاربر قبلاً به برنامهای که توسط شناسه کلاینت شناسایی شده است، دسترسی نداده باشد، به طور پیشفرض این پنجره سعی میکند یک پنجره محاورهای را باز کند که از کاربر میخواهد مجوز لازم را اعطا کند. با این حال، مرورگر میتواند این پنجره را مسدود کند. برای جلوگیری از این امر، تابع opt_onImmediateFailed را مشخص کنید و در آن یک دکمه ورود به سیستم درون صفحهای را رندر کنید، سپس ee.data.authenticateViaPopup() را از رویداد کلیک این دکمه فراخوانی کنید. این کار مرورگر را از مسدود کردن پنجره باز شده باز میدارد، زیرا اکنون نتیجه مستقیم یک اقدام کاربر است.
توکن احراز هویت در صورت امکان به طور خودکار بهروزرسانی میشود. میتوانید با اطمینان فرض کنید که تمام فراخوانیهای غیرهمزمان با اعتبارنامههای مناسب ارسال میشوند. با این حال، برای فراخوانیهای همزمان، باید با استفاده از ee.data.getAuthToken() وجود توکن احراز هویت را بررسی کنید و در صورت عدم وجود، ee.data.refreshAuthToken() را به صورت دستی فراخوانی کنید. عملیات بهروزرسانی توکن ناهمزمان است و نمیتوان آن را در پشت صحنه و بر اساس تقاضا، قبل از فراخوانیهای همزمان انجام داد.
| کاربرد | بازگشتها |
|---|---|
ee.data.authenticateViaOauth(clientId, success, error , extraScopes , onImmediateFailed , suppressDefaultScopes ) |
| استدلال | نوع | جزئیات |
|---|---|---|
clientId | رشته | شناسه کلاینت OAuth برنامه، یا null برای غیرفعال کردن فراخوانیهای احراز هویت شده. این را میتوان از طریق کنسول توسعهدهندگان گوگل دریافت کرد. پروژه باید دارای یک مبدأ جاوا اسکریپت باشد که با دامنهای که اسکریپت در آن اجرا میشود، مطابقت داشته باشد. |
success | عملکرد | تابعی که در صورت موفقیتآمیز بودن احراز هویت فراخوانی میشود. |
error | عملکرد، اختیاری | تابعی که در صورت عدم موفقیت احراز هویت فراخوانی میشود، پیام خطا را ارسال میکند. اگر احراز هویت در حالت فوری (پشت صحنه) با شکست مواجه شود و opt_onImmediateFailed مشخص شده باشد، آن تابع به جای opt_error فراخوانی میشود. |
extraScopes | لیست[رشته]، اختیاری | دامنههای OAuth اضافی برای درخواست. |
onImmediateFailed | عملکرد، اختیاری | تابعی که در صورت عدم موفقیت احراز هویت خودکار پشت صحنه فراخوانی میشود. مقدار پیشفرض آن ee.data.authenticateViaPopup() است و به callbackهای ارسالی محدود میشود. |
suppressDefaultScopes | بولی، اختیاری | وقتی مقدار آن درست باشد، فقط محدودههای مشخصشده در opt_extraScopes درخواست میشوند؛ محدودههای پیشفرض درخواست نمیشوند مگر اینکه صریحاً در opt_extraScopes مشخص شده باشند. |