يصف هذا المرجع طرق برنامج JavaScript والسمات التي ستستخدمها لتنفيذ تسجيل الدخول بحساب Google في تطبيقات الويب.
إذا واجهت أي مشكلة في استخدام المكتبة، يُرجى الإبلاغ عنها في مستودع جيت هب.
إعداد المصادقة
تحميل مكتبة النظام الأساسي لواجهات 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 |
جلب معلومات الملف الشخصي الأساسية للمستخدمين عند تسجيل الدخول. تتم إضافة "profile" (الملف الشخصي) و"email" و"openid" إلى النطاقات المطلوبة. صحيح إذا لم يتم تحديده. |
hosted_domain |
string |
نطاق G Suite الذي يجب أن ينتمي المستخدمون إليه لتسجيل الدخول. هذا الموقع قابل للتعديل من قِبل العملاء، لذا احرص على إثبات ملكية موقع النطاق المستضاف للمستخدم الذي تم عرضه. استخدِم
GoogleUser.getHostedDomain() على
البرنامج ومطالبة hd في الرمز المميّز لرقم التعريف على
الخادم لإثبات ملكية النطاق.
|
ux_mode |
string |
وضع "تجربة المستخدم" المطلوب استخدامه في إجراءات تسجيل الدخول سيؤدي ذلك تلقائيًا إلى فتح مسار الموافقة
في نافذة منبثقة. القيمتان الصالحتان هما popup وredirect . |
redirect_uri |
string |
في حال استخدام ux_mode='redirect' ، تتيح لك هذه المَعلمة إلغاء
redirect_uri التلقائي الذي سيتم استخدامه في نهاية عملية الموافقة. القيمة التلقائية redirect_uri هي عنوان URL الحالي الذي تتم إزالته من معلَمات طلب البحث وجزء علامة التجزئة.
|
enable_granular_consent |
boolean |
اختياريّ. ما إذا كان سيتم تفعيل
الأذونات الدقيقة. في حال ضبط السياسة على false ، سيتم إيقاف أذونات حساب Google
الأكثر دقة لمعرِّفات عملاء OAuth التي تم إنشاؤها قبل
2019. ليس هناك أي تأثير لمعرّفات عملاء OAuth التي تم إنشاؤها خلال عام 2019 أو بعده، لأنّه يتم دائمًا تفعيل المزيد من الأذونات الدقيقة لها.
|
plugin_name |
string |
اختياريّ. في حال ضبط هذه القيمة، ستتمكن معرّفات العملاء الجديدة التي تم إنشاؤها قبل 29 تموز (يوليو) 2022 من استخدام إصدار Google Platform Library القديم.
يتم تلقائيًا حظر أرقام تعريف العملاء التي تم إنشاؤها حديثًا من استخدام
"مكتبة النظام الأساسي"، وعليك استخدام مكتبة "خدمات Google Identity" الأحدث بدلاً من ذلك. يمكنك اختيار أي قيمة، ويُنصح باستخدام اسم وصفي مثل اسم المنتج أو المكوّن الإضافي لتسهيل التحديد.
مثلاً: 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 |
أن تحقق أيًا من التالي:
|
المرتجعات | |
---|---|
وعد | يتم إكمال 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 |
يفرض هذا الإعداد وضعًا معيّنًا لتدفق الموافقة. اختياريّ. القيم المحتمَلة هي:
|
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.grantTLSAccess(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 |
يفرض هذا الإعداد وضعًا معيّنًا لتدفق الموافقة. اختياريّ. القيم المحتمَلة هي:
|
scope |
string |
النطاقات المطلوب طلبها، كسلسلة محدَّدة بمسافات، بالإضافة إلى النطاقات المحدّدة في مَعلمات gapi.auth2.init . وتكون اختيارية في حال عدم ضبط fetch_basic_profile
على "خطأ".
|
GoogleAuth.attachClickHandler(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()
يتم عرض القيمة "صحيح" إذا كان المستخدم مسجّلاً الدخول.
المرتجعات | |
---|---|
منطقي | True إذا كان المستخدم مسجّلاً الدخول |
GoogleUser.getHostedDomain()
احصل على نطاق G Suite للمستخدم إذا سجَّل المستخدم الدخول باستخدام حساب G Suite.
المرتجعات | |
---|---|
سلسلة | نطاق G Suite للمستخدم |
GoogleUser.getGrantedScopes()
احصل على النطاقات التي منحها المستخدم كسلسلة محدَّدة بمسافات.
المرتجعات | |
---|---|
سلسلة | النطاقات التي منحها المستخدم |
GoogleUser.getBasicProfile()
الحصول على معلومات الملف الشخصي الأساسية للمستخدم
المرتجعات | |
---|---|
gapi.auth2.BasicProfile |
يمكنك استرداد سمات gapi.auth2.BasicProfile
بالطرق التالية:
|
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)
تعرض القيمة true إذا منح المستخدم النطاقات المحدّدة.
الوسيطات | |
---|---|
scopes | يشير ذلك المصطلح إلى سلسلة من النطاقات يتم الفصل بينها بمسافات. |
المرتجعات | |
---|---|
منطقي | صحيح في حال منح النطاقات |
GoogleUser.grant(options)
اطلب نطاقات إضافية للمستخدم.
راجِع GoogleAuth.signIn()
للاطّلاع على قائمة
المَعلمات ورمز الخطأ.
GoogleUser.grant GroupsAccess(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 }يمكنك تحديد الخيارات التالية:
|
مزايا متقدّمة
gapi.auth2.تفويض(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 |
مَعلمة مطلوبة. معرِّف العميل للتطبيق، ويتم العثور عليه وإنشاؤه في Google Developers Console. |
scope |
string |
مَعلمة مطلوبة. النطاقات المطلوب طلبها، كسلسلة محدَّدة بمسافات. |
response_type |
string |
تمثّل هذه السمة قائمة بنوع الردّ مع الفصل بين المسافات. وتكون الإعدادات التلقائية 'permission' . وفي ما يلي القيم المحتمَلة لهذه الحالة:
|
prompt |
string |
يفرض هذا الإعداد وضعًا معيّنًا لتدفق الموافقة. في ما يلي القيم المحتمَلة لهذه الحالة:
|
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 .
|
enable_granular_consent |
boolean |
اختياريّ. ما إذا كان سيتم تفعيل
الأذونات الدقيقة. في حال ضبط السياسة على false ، سيتم إيقاف أذونات حساب Google
الأكثر دقة لمعرِّفات عملاء OAuth التي تم إنشاؤها قبل
2019. ليس هناك أي تأثير لمعرّفات عملاء OAuth التي تم إنشاؤها خلال عام 2019 أو بعده، لأنّه يتم دائمًا تفعيل المزيد من الأذونات الدقيقة لها.
|
plugin_name |
string |
اختياريّ. وفي حال ضبط هذه السياسة، يمكن لأرقام تعريف العملاء التي تم إنشاؤها قبل 29 تموز (يوليو) 2022 استخدام
مكتبة Google Platform. يتم تلقائيًا حظر أرقام تعريف العملاء التي تم إنشاؤها حديثًا
من استخدام "مكتبة النظام الأساسي"، ويجب استخدام مكتبة "خدمات هوية Google" الأحدث بدلاً من ذلك. يمكنك اختيار أي قيمة، وننصح باستخدام اسم وصفي
مثل اسم المنتج أو المكوّن الإضافي لتسهيل التعرّف عليه.
مثلاً: 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 |
عندما يتعذّر الطلب، قد يشتمل هذا الإجراء على معلومات إضافية لرمز الخطأ الذي تم عرضه أيضًا. |