سيتم إيقاف "مكتبة منصّة JavaScript لتسجيل الدخول إلى Google" على الويب. لن تكون المكتبة متاحة للتنزيل بعد 31 آذار (مارس) 2023. وبدلاً من ذلك، استخدم خدمات Google Identity الجديدة على الويب.
حسب الإعدادات التلقائية، يتم الآن حظر استخدام معرّفات Client ID الجديدة في مكتبة النظام الأساسي، ولن تتأثر معرّفات Client ID الحالية. يمكن لمعرّفات العملاء الجديدة التي تم إنشاؤها قبل 29 تموز (يوليو) 2022 ضبط `plugin_name` لتفعيل استخدام "منصة Google" الأساسية.

مرجع عميل JavaScript لتسجيل الدخول بحساب Google

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

يصف هذا المرجع طرق برنامج وسمات برنامج JavaScript التي ستستخدمها لتسجيل الدخول بحساب Google في تطبيقات الويب.

إذا واجهت أي مشكلة في استخدام المكتبة، يُرجى الإبلاغ عنها إلى مستودع GitHub.

إعداد المصادقة

حمِّل مكتبة منصّة Google APIs لإنشاء العنصر gapi:

<script src="https://apis.google.com/js/platform.js?onload=init" async defer></script>

بعد تحميل مكتبة المنصة، حمِّل مكتبة auth2:

function init() {
  gapi.load('auth2', function() {
    /* Ready. Make a call to gapi.auth2.init or some other API */
  });
}

gapi.auth2.init(params)

لإعداد الكائن GoogleAuth. يجب الاتصال بهذه الطريقة قبل الاتصال بأساليب gapi.auth2.GoogleAuth.

عند إعداد الكائن GoogleAuth، يمكنك ضبط العنصر باستخدام معرِّف عميل OAuth 2.0 وأي خيارات إضافية تريد تحديدها. وبعد ذلك، إذا سبق أن سجَّل المستخدم دخوله، يستعيد الكائن GoogleAuth حالة تسجيل دخول المستخدم من الجلسة السابقة.

الوسيطات
params عنصر يحتوي على أزواج المفتاح/القيمة لبيانات إعداد البرنامج. راجِع gapi.auth2.ClientConfig للتعرّف على الخصائص المختلفة التي يمكن ضبطها. على سبيل المثال:
{
  client_id: 'CLIENT_ID.apps.googleusercontent.com'
}
المرتجعات
gapi.auth2.GoogleAuth الكائن gapi.auth2.GoogleAuth. استخدِم الطريقة then() للحصول على الكائن المتوقع الذي يتم حلّه عند الانتهاء من إعداد الكائن gapi.auth2.GoogleAuth.

GoogleAuth.then(onInit، onError)

استدعاء الدالة onInit عند إعداد الكائن GoogleAuth بالكامل. إذا ظهرت رسالة خطأ أثناء الإعداد (قد يحدث ذلك في المتصفحات القديمة غير المتوافقة)، سيتم استدعاء الدالة onError بدلاً منها.

الوسيطات
onInit الدالة التي يتم استدعاؤها باستخدام الكائن GoogleAuth عند إعدادها بالكامل.
onError الدالة التي يتم استدعاؤها باستخدام كائن يحتوي على خاصية error، في حال تعذّر إعداد GoogleAuth.
المرتجعات
خاتم الوعد بالزواج تمثّل هذه السمة Promise التي يتم تحقيقها عند اكتمال الدالة onInit أو رفضها في حال ظهور خطأ في الإعداد. ويتم حلّها باستخدام القيمة المعروضة من الدالة onInit، إن وجدت.

رموز الخطأ

idpiframe_initialization_failed
تعذّر إعداد إطار iframe مطلوب من Google مثلاً بسبب بيئة غير متوافقة. ستقدّم الخاصية details مزيدًا من المعلومات عن الخطأ الذي تم إصداره.

gapi.auth2.ClientConfig

الواجهة التي تمثل معلمات الإعداد المختلفة لطريقة gapi.auth2.init.

المعلَمات
client_id string إنّ هذه السمة مطلوبة. معرِّف عميل التطبيق، الذي يتم العثور عليه وإنشائه في Google Developers Console.
cookie_policy string النطاقات التي يتم إنشاء ملفات تعريف ارتباط تسجيل الدخول لها. إما معرّف الموارد المنتظم (URI) أو single_host_origin أو none. ويتم إعداد القيمة على single_host_origin تلقائيًا في حال عدم تحديدها.
scope string النطاقات المطلوبة كسلسلة مفصول بينها بمسافات. اختيارية في حال عدم ضبط fetch_basic_profile على "خطأ".
fetch_basic_profile boolean جلب معلومات الملف الشخصي الأساسية للمستخدمين عند تسجيل الدخول. إضافة "الملف الشخصي" و"البريد الإلكتروني" و"فتح" إلى النطاقات المطلوبة. صحيح إذا لم يتم تحديده.
hosted_domain string نطاق G Suite الذي يجب أن ينتمي المستخدمون إليه لتسجيل الدخول. وهذا عرضة للتعديل من قِبل العملاء، لذلك احرص على إثبات ملكية موقع النطاق المستضاف للمستخدم المعروض. استخدِم GoogleUser.getHostedDomain() على العميل، ومطالبة hd في الرمز المميّز للرقم التعريفي على الخادم لإثبات ملكية النطاق.
ux_mode string وضع تجربة المُستخدِم الذي سيتم استخدامه في تسجيل الدخول وحسب الإعدادات التلقائية، سيتم فتح مسار الموافقة في نافذة منبثقة. القيمتان الصالحتان هما popup وredirect.
redirect_uri string عند استخدام المعلَمة ux_mode='redirect'، ستسمح لك هذه المعلّمة بإلغاء redirect_uri التلقائية التي سيتم استخدامها في نهاية عملية الموافقة. وتكون السمة redirect_uri التلقائية هي عنوان URL الحالي الذي يتضمّن معلمات طلب البحث وجزء علامة التجزئة.
plugin_name string اختياري. إذا تم ضبط هذه القيمة، يمكن لأرقام تعريف البرامج الجديدة التي تم إنشاؤها قبل 29 تموز (يوليو) 2022 استخدام "مكتبة Google Platform" القديمة. يتم تلقائيًا الآن حظر استخدام "معرّفات العميل" التي تم إنشاؤها حديثًا، وبالتالي يجب استخدام مكتبة "خدمات Google" الأحدث. يمكنك اختيار أي قيمة، ويُنصح باستخدام اسم وصفي، مثل اسم المنتج أو المكوّن الإضافي. مثال: plugin_name: 'YOUR_STRING_HERE'

المصادقة

GoogleAuth هي فئة فردية توفّر طرقًا تتيح للمستخدم تسجيل الدخول باستخدام حساب Google والحصول على حالة تسجيل الدخول الحالية لهذا المستخدم والحصول على بيانات معيّنة من الملف الشخصي للمستخدم على Google وطلب نطاقات إضافية وتسجيل الخروج من حسابك الحالي.

gapi.auth2.getAuthInstance()

لعرض الكائن GoogleAuth. يجب إعداد الكائن GoogleAuth باستخدام gapi.auth2.init() قبل استدعاء هذه الطريقة.

المرتجعات
gapi.auth2.GoogleAuth الكائن gapi.auth2.GoogleAuth. استخدِم هذا الكائن لاستدعاء طرق gapi.auth2.GoogleAuth.

GoogleAuth.isSignedIn.get()

يعرض ما إذا كان المستخدم الحالي قد سجّل الدخول حاليًا.

المرتجعات
منطقي true إذا كان المستخدم مسجّلاً الدخول، أو false في حال تسجيل خروج المستخدم أو عدم ضبط الكائن GoogleAuth.

GoogleAuth.isSignedIn.listen(listener)

يمكنك الاستماع إلى التغييرات في حالة تسجيل دخول المستخدم الحالي.

الوسيطات
listener دالة تستخدم قيمة منطقية. يعمل listen() على تمرير true إلى هذه الدالة عندما يسجّل المستخدم الدخول، وfalse عندما يسجّل المستخدم خروجه.

GoogleAuth.signIn()

تسجيل دخول المستخدم بالخيارات المحددة لـ gapi.auth2.init().

المرتجعات
خاتم الوعد بالزواج تمثّل هذه الخاصية Promise التي يتم تحقيقها باستخدام المثيل GoogleUser عندما يصادق المستخدم النطاقات المطلوبة ويمنحها أو يرفضها باستخدام كائن يحتوي على الخاصية error في حال حدوث خطأ (يُرجى الاطّلاع على أدناه رموز الأخطاء).

رموز الخطأ

الاطّلاع على GoogleAuth.signIn(options).

GoogleAuth.signIn(options)

تسجيل دخول المستخدم باستخدام الخيارات المحددة.

الوسيطات
options ويمكنك الاختيار ممّا يلي:
  • عنصر gapi.auth2.SignInOptions يحتوي على أزواج المفتاح/القيمة لمعلَمات تسجيل الدخول. على سبيل المثال:
    {
      scope: 'profile email'
    }
  • مثيل gapi.auth2.SigninOptionsBuilder. على سبيل المثال:
    options = new gapi.auth2.SigninOptionsBuilder();
    options.setAppPackageName('com.example.app');
    options.setFetchBasicProfile(True);
    options.setPrompt('select_account');
    options.setScope('profile').setScope('email');
المرتجعات
خاتم الوعد بالزواج تمثّل هذه الخاصية Promise التي يتم تحقيقها باستخدام المثيل GoogleUser عندما يصادق المستخدم النطاقات المطلوبة ويمنحها أو يرفضها باستخدام كائن يحتوي على الخاصية error في حال حدوث خطأ (يُرجى الاطّلاع على أدناه رموز الأخطاء).

رموز الخطأ

popup_closed_by_user
أغلق المستخدم النافذة المنبثقة قبل إنهاء عملية تسجيل الدخول.
access_denied
رفض المستخدم الإذن للنطاقات المطلوبة.
immediate_failed
لا يمكن اختيار أي مستخدم تلقائيًا بدون طلب خطوات الموافقة. حدث خطأ أثناء استخدام السمة signIn مع الخيار prompt: 'none'. يجب ألا يكون هذا الخيار مطلوبًا للاستخدام، لأن gapi.auth2.init سيسجّل دخول المستخدم تلقائيًا إذا كان قد سجّل الدخول سابقًا أثناء جلسة سابقة.

gapi.auth2.SignInOptions

واجهة تمثل معلمات الإعداد المختلفة للطريقة GoogleAuth.signIn(options).

المعلَمات
prompt string تعمل هذه السياسة على فرض وضع محدّد لتدفق الموافقة. اختياري.
القيم المحتملة هي:
  • consent
    يطلب خادم المصادقة المستخدم من الموافقة قبل عرض المعلومات في التطبيق.
  • select_account
    يطلب خادم التفويض من المستخدم اختيار حساب Google. ويسمح ذلك للمستخدم الذي يمتلك حسابات متعددة بالاختيار من بين حسابات متعددة قد تكون لديه جلسات حالية.
  • none (غير مُقترَح)
    لن يعرض خادم المصادقة أي شاشة مصادقة أو شاشات موافقة من المستخدمين؛ ستعرض رسالة خطأ إذا لم تتم مصادقة المستخدم من قبل ولم يوافق مسبقًا على النطاقات المطلوبة.
    بما أنّ gapi.auth2.init سيسجّل دخول مستخدم تلقائيًا إلى التطبيق إذا سبق أن سجّلت الدخول، سيتعذّر عادةً الاتصال signIn({prompt: 'none'}).
scope string النطاقات التي يتم طلبها، كسلسلة محدّدة بمسافات، في أعلى النطاقات المحدّدة في معلمات gapi.auth2.init. وتكون اختيارية في حال عدم ضبط fetch_basic_profile على "خطأ".
ux_mode string وضع تجربة المُستخدِم الذي سيتم استخدامه في تسجيل الدخول وحسب الإعدادات التلقائية، سيتم فتح مسار الموافقة في نافذة منبثقة. القيمتان الصالحتان هما popup وredirect.
redirect_uri string عند استخدام المعلَمة ux_mode='redirect'، ستسمح لك هذه المعلَمة بإلغاء redirect_uri التلقائية التي سيتم استخدامها في نهاية مسار الموافقة. redirect_uri التلقائي هو عنوان URL الحالي الذي يتضمّن معلمات طلب البحث وجزء علامة التجزئة.

GoogleAuth.signOut()

الخروج من الحساب الحالي من التطبيق.

المرتجعات
خاتم الوعد بالزواج ويتم عرض السمة Promise إذا كان المستخدم مسجّلاً الخروج.

GoogleAuth.disconnect()

يؤدي إلى إبطال جميع النطاقات التي منحها المستخدم.

GoogleAuth.GRANTOfflineAccess(options)

يمكنك الحصول على إذن من المستخدم للوصول إلى النطاقات المحددة بلا اتصال بالإنترنت.

الوسيطات
options عنصر gapi.auth2.OfflineAccessOptions يحتوي على أزواج المفتاح/القيمة. على سبيل المثال:
{
  scope: 'profile email'
}
المرتجعات
خاتم الوعد بالزواج ويتم تنفيذ السمة Promise عندما يمنح المستخدم النطاقات المطلوبة، ويمرِّر كائنًا يحتوي على رمز التفويض إلى معالج تنفيذ Promise. على سبيل المثال:
auth2.grantOfflineAccess().then(function(resp) {
  var auth_code = resp.code;
});

رموز الخطأ

popup_closed_by_user
أغلق المستخدم النافذة المنبثقة قبل إنهاء تدفق الموافقة.
access_denied
رفض المستخدم الإذن للنطاقات المطلوبة.
immediate_failed
لا يمكن اختيار أي مستخدم تلقائيًا بدون طلب خطوات الموافقة. حدث خطأ أثناء استخدام السمة signIn مع الخيار prompt: 'none'. يجب ألا يكون هذا الخيار مطلوبًا للاستخدام، لأن gapi.auth2.init سيسجّل دخول المستخدم تلقائيًا إذا كان قد سجّل الدخول سابقًا أثناء جلسة سابقة.

gapi.auth2.OfflineAccessOptions

واجهة تمثل معلمات الإعداد المختلفة لطريقة GoogleAuth.grantOfflineAccess(options).

المعلَمات
prompt string تعمل هذه السياسة على فرض وضع محدّد لتدفق الموافقة. اختياري.
القيم المحتملة هي:
  • consent
    يطلب خادم المصادقة المستخدم من الموافقة قبل عرض المعلومات في التطبيق.
  • select_account
    يطلب خادم التفويض من المستخدم اختيار حساب Google. ويسمح ذلك للمستخدم الذي يمتلك حسابات متعددة بالاختيار من بين حسابات متعددة قد تكون لديه جلسات حالية.
scope string النطاقات التي يتم طلبها، كسلسلة محدّدة بمسافات، في أعلى النطاقات المحدّدة في معلمات gapi.auth2.init. وتكون اختيارية في حال عدم ضبط fetch_basic_profile على "خطأ".

GoogleAuth.attachmentClickHandler(container, options, onsuccess, onfailure)

لإرفاق عملية تسجيل الدخول بمعالج النقرات على الحاوية المحددة.

الوسيطات
container معرّف العنصر div أو مرجع له لإرفاقه مع معالج النقر
options عنصر يحتوي على أزواج المفتاح/القيمة في المعلّمات. يمكنك الاطّلاع على GoogleAuth.signIn().
onsuccess دالة الاتصال بعد اكتمال تسجيل الدخول
onfailure دالة الاتصال في حال تعذُّر تسجيل الدخول.

المستخدمون

يمثل الكائن GoogleUser حساب مستخدم واحدًا. يتم عادةً الحصول على عناصر GoogleUser من خلال استدعاء GoogleAuth.currentUser.get().

GoogleAuth.currentUser.get()

عرض عنصر GoogleUser يمثل المستخدم الحالي. لاحظ أنه في مثيل GoogleAuth الذي تم إعداده حديثًا، لم يتم ضبط المستخدم الحالي. استخدِم الطريقة currentUser.listen() أو GoogleAuth.then() للحصول على مثيل GoogleAuth تم إعداده.

المرتجعات
GoogleUser المستخدم الحالي

GoogleAuth.currentUser.listen(listener)

معرفة التغييرات في حالة المستخدم الحالي.

الوسيطات
listener دالة تتطلب معلَمة GoogleUser تضبط listen هذه الدالة على مثال GoogleUser لكل تغيير يُعدِّل currentUser.

GoogleUser.getId()

احصل على سلسلة المعرّف الفريد للمستخدم.

المرتجعات
سلسلة المعرّف الفريد للمستخدم

GoogleUser.isSignedIn()

عرض "صحيح" إذا كان المستخدم مسجّلاً الدخول.

المرتجعات
منطقي صحيح إذا كان المستخدم مسجّلاً الدخول

GoogleUser.getHostedDomain()

احصل على نطاق G Suite للمستخدم إذا سجّل الدخول باستخدام حساب G Suite.

المرتجعات
سلسلة نطاق G Suite للمستخدم

GoogleUser.getGRANTedScopes()

يمكنك الحصول على النطاقات التي منحها المستخدم كسلسلة مفصول بينها بمسافات.

المرتجعات
سلسلة النطاقات التي منحها المستخدم

GoogleUser.getBasicProfile()

احصل على معلومات الملف الشخصي الأساسية للمستخدم.

المرتجعات
gapi.auth2.BasicProfile يمكنك استرداد خصائص gapi.auth2.BasicProfile بالطرق التالية:
  • BasicProfile.getId()
  • BasicProfile.getName()
  • BasicProfile.getGivenName()
  • BasicProfile.getFamilyName()
  • BasicProfile.getImageUrl()
  • BasicProfile.getEmail()

GoogleUser.getAuthResponse(includeAuthorizationData)

احصل على كائن الاستجابة من جلسة مصادقة المستخدم.

الوسيطات
includeAuthorizationData اختياري: قيمة منطقية تحدد ما إذا كنت تريد عرض رمز الدخول والنطاقات دائمًا أم لا. بشكل تلقائي، لا يتم عرض رمز الدخول والنطاقات المطلوبة عندما تكون القيمة fetch_basic_profile صحيحة (القيمة التلقائية) ولا يتم طلب نطاقات إضافية.
المرتجعات
gapi.auth2.AuthResponse عنصر gapi.auth2.AuthResponse.

GoogleUser.reloadAuthResponse()

لفرض إعادة تحميل رمز الدخول، ثم عرض الكائن المتوقع لاستجابة AuthResponse الجديدة.

المرتجعات
Promise وتتم معالجة السمة Promise التي تستوفي السمة gapi.auth2.AuthResponse التي تمت إعادة تحميلها عند إعادة تحميل رمز OAuth المميّز.

gapi.auth2.AuthResponse

تم عرض الرد عند الاتصال بأساليب GoogleUser.getAuthResponse(includeAuthorizationData) أو GoogleUser.reloadAuthResponse().

المنشآت الفندقية
access_token string تم منح رمز الدخول.
id_token string تم منح الرمز المميز للمعرّف.
scope string النطاقات الممنوحة في رمز الدخول.
expires_in number عدد الثواني حتى انتهاء صلاحية رمز الدخول.
first_issued_at number الطابع الزمني الذي منح المستخدم فيه النطاقات المطلوبة لأول مرة.
expires_at number الطابع الزمني الذي تنتهي فيه صلاحية رمز الدخول.

GoogleUser.hasGRANTedScopes(scopes)

عرض "صحيح" إذا منح المستخدم النطاقات المُحدّدة.

الوسيطات
scopes سلسلة من النطاقات المفصولة بمسافات.
المرتجعات
منطقي صحيح إذا تم منح النطاقات

GoogleUser.GRANT(options)

طلب نطاقات إضافية للمستخدم.

اطّلع على GoogleAuth.signIn() للحصول على قائمة المعلمات ورمز الخطأ.

GoogleUser.GRANTOfflineAccess(options)

يمكنك الحصول على إذن من المستخدم للوصول إلى النطاقات المحددة بلا اتصال بالإنترنت.

الوسيطات
options عنصر gapi.auth2.OfflineAccessOptions يحتوي على أزواج المفتاح/القيمة. على سبيل المثال:
{
  scope: 'profile email'
}

GoogleUser.disconnect()

يؤدي هذا الخيار إلى إبطال جميع النطاقات التي منحها المستخدم للتطبيق.

عناصر واجهة المستخدم

gapi.signin2.render(id, options)

تعرض زر تسجيل الدخول في العنصر الذي يحمل المعرّف المحدد، باستخدام الإعدادات التي حدّدها العنصر options.

الوسيطات
id رقم تعريف العنصر الذي يتم عرض زر تسجيل الدخول فيه.
options عنصر يحتوي على الإعدادات المراد استخدامها لعرض الزر. على سبيل المثال:
{
  scope: 'email',
  width: 200,
  height: 50,
  longtitle: true,
  theme: 'dark',
  onsuccess: handleSuccess,
  onfailure: handleFailure
}
يمكنك تحديد الخيارات التالية:
المعلَمات
نطاق النطاقات المطلوب طلبها عند تسجيل المستخدم الدخول (الإعداد التلقائي: profile).
العرض عرض الزر بالبكسل (القيمة التلقائية: 120).
الارتفاع ارتفاع الزر بالبكسل (القيمة التلقائية: 36).
Longtitle (عنوان طويل) عرض تصنيفات طويلة مثل "تسجيل الدخول باستخدام حساب Google" بدلاً من "تسجيل الدخول" (الإعداد التلقائي: false) عند استخدام عناوين طويلة، يجب زيادة عرض الزر من الإعداد التلقائي.
الموضوع المظهر الملوَّن للزر: إما light أو dark (تلقائي: light).
cannot translate دالة رد الاتصال للاتصال عندما يسجِّل المستخدم الدخول بنجاح. يجب أن تستخدم هذه الدالة وسيطة واحدة: نسخة من gapi.auth2.GoogleUser (تلقائي: لا شيء).
فشل دالة رد الاتصال للاتصال عند تعذُّر تسجيل الدخول. لا تستخدم هذه الدالة أي وسيطات (تلقائي: لا شيء).

مزايا متقدّمة

gapi.auth2.authorize(params, callback)

يجري تفويض OAuth 2.0 لمرة واحدة. بناءً على المَعلمات التي يتم استخدامها، سيؤدّي ذلك إلى فتح نافذة منبثقة على تدفق تسجيل الدخول إلى حساب Google أو محاولة تحميل الرد المطلوب بدون صوت، بدون تفاعل المستخدم.

في ما يلي بعض حالات الاستخدام المفيدة لهذه الطريقة:

  • لا يحتاج تطبيقك إلا إلى طلب نقطة نهاية Google API مرة واحدة فقط، على سبيل المثال لتحميل فيديوهات YouTube المفضلة للمستخدم في المرة الأولى التي يسجل فيها الدخول.
  • تطبيقك له بنية أساسية لإدارة الجلسات، ولا يتطلب سوى الرمز المميز للمعرّف مرة واحدة لتحديد المستخدم في الخلفية.
  • يتم استخدام العديد من معرّفات العملاء ضمن الصفحة نفسها.
الوسيطات
params عنصر يحتوي على أزواج المفتاح/القيمة لبيانات الضبط. راجِع gapi.auth2.AuthorizeConfig للتعرّف على الخصائص المختلفة التي يمكن ضبطها. على سبيل المثال:
{
  client_id: 'CLIENT_ID.apps.googleusercontent.com',
  scope: 'email profile openid',
  response_type: 'id_token permission'
}
callback دالة يتم استدعاؤها باستخدام الكائن gapi.auth2.AuthorizeResponse بعد اكتمال الطلب (إما بنجاح أو مع تعذّر).

مثال

gapi.auth2.authorize({
  client_id: 'CLIENT_ID.apps.googleusercontent.com',
  scope: 'email profile openid',
  response_type: 'id_token permission'
}, function(response) {
  if (response.error) {
    // An error happened!
    return;
  }
  // The user authorized the application for the scopes requested.
  var accessToken = response.access_token;
  var idToken = response.id_token;
  // You can also now use gapi.client to perform authenticated requests.
});

رموز الخطأ

idpiframe_initialization_failed
تعذّر إعداد إطار iframe مطلوب من Google مثلاً بسبب بيئة غير متوافقة. ستقدّم الخاصية details مزيدًا من المعلومات عن الخطأ الذي تم إصداره.
popup_closed_by_user
أغلق المستخدم النافذة المنبثقة قبل إنهاء عملية تسجيل الدخول.
access_denied
رفض المستخدم الإذن للنطاقات المطلوبة.
immediate_failed
لا يمكن اختيار أي مستخدم تلقائيًا بدون طلب خطوات الموافقة. حدث خطأ أثناء استخدام السمة signIn مع الخيار prompt: 'none'.

gapi.auth2.authorizeConfig

واجهة تمثل معلمات الإعداد المختلفة للطريقة gapi.auth2.authorize.

المنشآت الفندقية
client_id string Required. معرِّف عميل التطبيق، الذي يتم العثور عليه وإنشائه في Google Developers Console.
scope string Required. النطاقات المطلوبة كسلسلة مفصول بينها بمسافات.
response_type string قائمة بنوع استجابة مفصولة بمسافات. القيمة التلقائية هي 'permission'. القيم المحتملة هي:
  • id_token، لاسترداد رمز مميز للمعرّف
  • permission (أو token)، لاسترداد رمز الدخول
  • code، لاسترداد رمز التفويض
prompt string تعمل هذه السياسة على فرض وضع محدّد لتدفق الموافقة. القيم المحتمَلة هي:
  • consent
    يطلب خادم المصادقة المستخدم من الموافقة قبل عرض المعلومات في التطبيق.
  • select_account
    يطلب خادم التفويض من المستخدم اختيار حساب Google. ويسمح ذلك للمستخدم الذي يمتلك حسابات متعددة بالاختيار من بين حسابات متعددة قد تكون لديه جلسات حالية.
  • none
    لن يعرض خادم المصادقة أي شاشة مصادقة أو شاشة موافقة المستخدِم. ستعرض رسالة خطأ إذا لم تتم مصادقة المستخدم من قبل ولم يوافق مسبقًا على النطاقات المطلوبة.
    في حال طلب code كنوع استجابة، يمكن استبدال الرمز المعروض بـ access_token فقط، وليس refresh_token.
cookie_policy string النطاقات التي يتم إنشاء ملفات تعريف ارتباط تسجيل الدخول لها. إما معرّف الموارد المنتظم (URI) أو single_host_origin أو none. ويتم إعداد القيمة على single_host_origin تلقائيًا في حال عدم تحديدها.
hosted_domain string نطاق G Suite الذي يجب أن ينتمي المستخدمون إليه لتسجيل الدخول. وهذا عرضة للتعديل من قِبل العملاء، لذلك تأكد من إثبات ملكية موقع النطاق المستضاف للمستخدم المعروض.
login_hint string البريد الإلكتروني أو رقم تعريف المستخدم، للمستخدم المحدد مسبقًا في تدفق تسجيل الدخول. وتُعدّ هذه الإعدادات عرضة للتعديل من قِبل المستخدم، ما لم يتم استخدام prompt: "none".
include_granted_scopes boolean ما إذا كان المطلوب طلب رمز الدخول الذي يتضمن جميع النطاقات التي منحها المستخدم مسبقًا إلى التطبيق، أو فقط النطاقات المطلوبة في المكالمة الحالية. القيمة التلقائية هي true.
plugin_name string اختياري. في حال ضبط هذه السياسة، يمكن لمعرّفات العملاء التي تم إنشاؤها قبل 29 تموز (يوليو) 2022 استخدام "مكتبة Google Platform". يتم تلقائيًا حظر معرّفات العملاء التي تم إنشاؤها حديثًا من استخدام "مكتبة المنصة"، ويجب استخدام مكتبة "خدمات Google Identity" الأحدث بدلاً من ذلك. يمكنك اختيار أي قيمة، ويُنصح باستخدام اسم وصفي، مثل اسم المنتج أو المكوّن الإضافي. مثال: plugin_name: 'YOUR_STRING_HERE'

gapi.auth2.authorizeResponse

تمت إعادة الرد إلى معاودة الاتصال بالطريقة gapi.auth2.authorize.

المنشآت الفندقية
access_token string تم منح رمز الدخول. لا تتوفر هذه الخاصية إلا إذا تم تحديد permission أو token في response_type.
id_token string تم منح الرمز المميز للمعرّف. لا تتوفر هذه القيمة إلا إذا تم تحديد id_token في response_type.
code string تم منح رمز التفويض. لا تتوفر هذه القيمة إلا إذا تم تحديد code في response_type.
scope string النطاقات الممنوحة في رمز الدخول. لا تتوفر هذه الخاصية إلا إذا تم تحديد permission أو token في response_type.
expires_in number عدد الثواني حتى انتهاء صلاحية رمز الدخول. لا تتوفر هذه الخاصية إلا إذا تم تحديد permission أو token في response_type.
first_issued_at number الطابع الزمني الذي منح المستخدم فيه النطاقات المطلوبة لأول مرة. لا تتوفر هذه الخاصية إلا إذا تم تحديد permission أو token في response_type.
expires_at number الطابع الزمني الذي تنتهي فيه صلاحية رمز الدخول. لا تتوفر هذه الخاصية إلا إذا تم تحديد permission أو token في response_type.
error string عندما يتعذّر الطلب، يحتوي ذلك على رمز الخطأ.
error_subtype string عندما يتعذّر الطلب، يمكن أن يحتوي هذا على معلومات إضافية إلى رمز الخطأ الذي تم عرضه أيضًا.