تحذير: يتم توفير هذه البيانات بموجب سياسة بيانات مستخدمي Google. يُرجى مراجعة السياسة والالتزام بها. وقد يؤدي عدم الالتزام بذلك إلى تعليق المشروع أو الحساب.

مرجع تسجيل الدخول باستخدام واجهة برمجة تطبيقات JavaScript لـ Google

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

تصف هذه الصفحة المرجعية واجهة برمجة تطبيقات JavaScript لتسجيل الدخول. ويمكنك استخدام واجهة برمجة التطبيقات هذه لعرض رسالة المطالبة "النقرة الواحدة" أو الزر "تسجيل الدخول باستخدام حساب Google" على صفحات الويب.

الطريقة: google.accounts.id.initialize

تعمل طريقة google.accounts.id.initialize على إعداد برنامج "تسجيل الدخول باستخدام حساب Google" بناءً على كائن الضبط. اطّلِع على مثال الرمز التالي للطريقة:

google.accounts.id.initialize(IdConfiguration)

ينفذ مثال الرمز التالي طريقة google.accounts.id.initialize مع دالة onload:

<script>
  window.onload = function () {
    google.accounts.id.initialize({
      client_id: 'YOUR_GOOGLE_CLIENT_ID',
      callback: handleCredentialResponse
    });
    google.accounts.id.prompt();
  };
</script>

تنشئ الطريقة google.accounts.id.initialize نسخة افتراضية من عميل تسجيل الدخول باستخدام Google يمكن استخدامها بشكل ضمني في جميع الوحدات في صفحة الويب نفسها.

  • وعليك فقط استدعاء طريقة google.accounts.id.initialize مرة واحدة حتى إذا كنت تستخدم وحدات متعددة (مثل نقرة واحدة، وزر مخصّص، وإبطال، وما إلى ذلك) في صفحة الويب نفسها.
  • وفي حال استدعاء الطريقة google.accounts.id.initialize عدة مرات، سيتم تذكّر واستخدام الإعدادات فقط في المكالمة الأخيرة فقط.

وعليك إعادة ضبط الإعدادات تلقائيًا عند استدعاء الطريقة google.accounts.id.initialize، وستستخدم جميع الطرق اللاحقة في صفحة الويب نفسها عمليات الضبط الجديدة على الفور.

نوع البيانات: IdConfiguration

يسرد الجدول التالي الحقول والأوصاف لنوع البيانات IdConfiguration.

الحقل
client_id معرِّف العميل لتطبيقك
auto_select لتفعيل الاختيار التلقائي.
callback دالة JavaScript التي تعالج الرموز المميّزة للمعرّفات. تستخدم Google One ميزة النقر على زر تسجيل الدخول باستخدام حساب Google popup لوضع تجربة المستخدم
login_uri عنوان URL لنقطة نهاية تسجيل الدخول. زر "تسجيل الدخول باستخدام حساب Google" redirect يستخدم وضع "تجربة المستخدم" هذه السمة.
native_callback دالة JavaScript التي تعالج بيانات اعتماد كلمة المرور.
cancel_on_tap_outside ويتم إلغاء رسالة المطالبة إذا نقر المستخدم خارج رسالة المطالبة.
prompt_parent_id رقم تعريف نموذج العناصر في المستند لعنصر حاوية المطالبة بنقرة واحدة
nonce سلسلة عشوائية للرموز المميزة لرقم التعريف
context العنوان والكلمات الواردة في رسالة المطالبة بنقرة واحدة
state_cookie_domain إذا كنت بحاجة إلى طلب نقرة واحدة في النطاق الرئيسي والنطاقات الفرعية الخاصة به، يجب تمرير النطاق الرئيسي إلى هذا الحقل حتى يتم استخدام ملف تعريف ارتباط مشترك واحد.
ux_mode مسار تجربة المستخدم لزر تسجيل الدخول باستخدام حساب Google
allowed_parent_origin المصادر المسموح لها بتضمين إطار iframe الوسيطة. وسيتم تشغيل نقرة واحدة في وضع إطار iframe المتوسط في حال توفّر هذا الحقل.
intermediate_iframe_close_callback تلغي هذه السياسة سلوك إطار iframe المتوسط عندما يغلق المستخدمون يدويًا نقرة واحدة.
itp_support تعمل هذه السياسة على تفعيل تجربة المستخدم التي تمت ترقيتها بنقرة واحدة على متصفّحات ITP.

client_id

هذا الحقل هو معرِّف العميل المتعلق بتطبيقك، والذي يتم العثور عليه وإنشائه في Google Developers Console. للحصول على مزيد من المعلومات، راجع الجدول التالي:

النوع مطلوبة مثال
string نعم client_id: "CLIENT_ID.apps.googleusercontent.com"

اختيار_تلقائي

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

النوع مطلوبة مثال
منطقي اختيارية auto_select: true

معاودة الاتصال

هذا الحقل هو وظيفة JavaScript التي تعالج الرمز المميّز للمعرّف المعروض من رسالة المطالبة بنقرة واحدة أو النافذة المنبثقة. تكون هذه السمة مطلوبة في حال استخدام ميزة "النقرة الواحدة" من Google أو زر "تسجيل الدخول باستخدام حساب Google" وضع تجربة المستخدم popup. للحصول على مزيد من المعلومات، راجع الجدول التالي:

النوع مطلوبة مثال
الدالة مطلوبة بنقرة واحدة ووضع تجربة المستخدم في popup callback: handleResponse

Login_uri

هذه السمة هي معرّف الموارد المنتظم (URI) لنقطة نهاية تسجيل الدخول. وقد يتم حذفه إذا كانت الصفحة الحالية هي صفحة تسجيل الدخول، وفي هذه الحالة يتم نشر بيانات الاعتماد في هذه الصفحة بشكل تلقائي.

يتم نشر استجابة بيانات اعتماد الرمز المميّز لنقطة نهاية تسجيل الدخول عندما ينقر المستخدم على الزر "تسجيل الدخول باستخدام حساب Google" وإعادة توجيه وضع تجربة المستخدم.

للحصول على مزيد من المعلومات، راجع الجدول التالي:

النوع اختيارية مثال
عنوان URL ويتم إعداد القيمة التلقائية على معرّف الموارد المنتظم للصفحة الحالية أو القيمة التي تحددها.
لا يتم استخدامها إلا عند ضبط ux_mode: "redirect".
login_uri="https://www.example.com/login"

يجب أن تتعامل نقطة نهاية تسجيل الدخول مع طلبات POST التي تتضمن مفتاح credential مع قيمة رمز مميز للمعرّف في النص.

إليك مثال على طلب لنقطة نهاية تسجيل الدخول:

POST /login HTTP/1.1
Host: www.example.com
Content-Type: application/x-www-form-urlencoded

credential=ID_TOKEN

الاتصال_الأساسي

هذا الحقل هو اسم دالة JavaScript التي تعالج بيانات اعتماد كلمة المرور المعروضة من مدير بيانات الاعتماد الأصلي للمتصفِّح. يمكنك الاطّلاع على الجدول التالي للحصول على مزيد من المعلومات:

النوع مطلوبة مثال
الدالة اختيارية native_callback: handleResponse

الإلغاء_على_النقر_الخارجي

يحدّد هذا الحقل ما إذا كان سيتم إلغاء طلب النقرة الواحدة أم لا إذا نقر المستخدم خارج رسالة المطالبة. القيمة التلقائية هي true. يمكنك وقفها إذا ضبطت القيمة على false. للحصول على مزيد من المعلومات، راجع الجدول التالي:

النوع مطلوبة مثال
منطقي اختيارية cancel_on_tap_outside: false

معرّف_الوالد_الخاص

تحدّد هذه السمة معرّف DOM لعنصر الحاوية. وفي حال عدم ضبطها، تظهر رسالة النقرة الواحدة في أعلى يسار النافذة. يمكنك الاطّلاع على الجدول التالي للحصول على مزيد من المعلومات:

النوع مطلوبة مثال
string اختيارية prompt_parent_id: 'parent_id'

رقم خاص

هذا الحقل عبارة عن سلسلة عشوائية يستخدمها الرمز المميز للمعرّف لمنع إعادة تشغيل الهجمات. للحصول على مزيد من المعلومات، راجع الجدول التالي:

النوع مطلوبة مثال
string اختيارية nonce: "biaqbm70g23"

تقتصر مدة عدم استخدام المحتوى على الحد الأقصى لحجم JWT الذي تدعمه بيئتك، وقيود حجم المتصفح والخادم الفردية.

سياق

يغيّر هذا الحقل نص العنوان والرسائل في رسالة المطالبة بنقرة واحدة. للحصول على مزيد من المعلومات، راجع الجدول التالي:

النوع مطلوبة مثال
string اختيارية context: "use"

يسرد الجدول التالي السياقات المتاحة وأوصافها:

السياق
signin &تسجيل الدخول؛ باستخدام Google&quot
signup "الاشتراك مع Google&quot
use "استخدام مع Google&quot

إذا كنت بحاجة إلى عرض النقرة الواحدة في النطاق الرئيسي والنطاقات الفرعية، يُرجى تمرير النطاق الرئيسي إلى هذا الحقل حتى يتم استخدام ملف تعريف ارتباط واحد مشترك للولاية. للحصول على مزيد من المعلومات، راجع الجدول التالي:

النوع مطلوبة مثال
string اختيارية state_cookie_domain: "example.com"

وضع_ux

استخدِم هذا الحقل لضبط تدفق تجربة المستخدم الذي يستخدمه الزر "تسجيل الدخول باستخدام حساب Google". والقيمة التلقائية هي popup. لا تؤثر هذه السمة في تجربة المستخدم OneTap. يمكنك الاطّلاع على الجدول التالي للحصول على مزيد من المعلومات:

النوع مطلوبة مثال
string اختيارية ux_mode: "redirect"

يسرد الجدول التالي أوضاع تجربة المستخدم المتاحة وأوصافها.

وضع تجربة المستخدم
popup تنفيذ مسار تجربة تسجيل الدخول للمستخدم في نافذة منبثقة
redirect تنفيذ خطوات تجربة المستخدم عند تسجيل الدخول من خلال إعادة توجيه الصفحة بأكملها

Allowed_parent_origin

المصادر المسموح لها بتضمين إطار iframe الوسيطة. سيتم تشغيل نقرة واحدة في وضع إطار iframe الوسيطة في حال عرض هذا الحقل. اطلِع على الجدول التالي للحصول على مزيد من المعلومات:

النوع مطلوبة مثال
مصفوفة سلسلة أو سلسلة اختيارية allowed_parent_origin: "https://example.com"

يسرد الجدول التالي أنواع القيم المسموح بها وأوصافها.

أنواع القيم
string معرّف الموارد المنتظم (URI) لنطاق واحد. "https://example.com"
string array مصفوفة من معرفات الموارد المنتظمة (URI) للنطاق. ["https://news.example.com", "https://local.example.com"]

ويمكن أيضًا استخدام بادئات أحرف البدل. على سبيل المثال، سوف تُطابق "https://*.example.com" example.com والنطاقات الفرعية فيه على جميع المستويات (مثل news.example.com وlogin.news.example.com). يجب مراعاة ما يلي عند استخدام أحرف البدل:

  • لا يمكن أن تتألف سلاسل الأنماط من حرف بدل ونطاق مستوى أعلى فقط. على سبيل المثال، قيمة https://*.com وhttps://*.co.uk غير صالحة. كما هو موضّح أعلاه، سوف يتطابق الحقل "https://*.example.com" مع example.com والنطاقات الفرعية التابعة له. يمكنك أيضًا استخدام مصفوفة لتمثيل نطاقين مختلفين. على سبيل المثال، سوف يطابق ["https://example1.com", "https://*.example2.com"] النطاقات example1.com وexample2.com والنطاقات الفرعية لـ example2.com
  • يجب أن تبدأ نطاقات أحرف البدل بنظام https:// آمن. سيتم اعتبار "*.example.com" غير صالح.

وإذا كانت قيمة الحقل allowed_parent_origin غير صالحة، ستتعذّر عملية الإعداد بنقرة واحدة لوضع إطار iframe الوسيطة وتتوقف.

Mid_iframe_close_callback

تلغي هذه السياسة سلوك إطار iframe الوسيطة عندما يغلق المستخدمون يدويًا نقرة واحدة من خلال النقر على الزر 'X&#39؛ في واجهة مستخدم "النقرة الواحدة". السلوك التلقائي هو إزالة إطار iframe الوسيطة من نموذج العناصر في المستند (DOM) على الفور.

لا يسري حقل intermediate_iframe_close_callback إلا في وضع إطار iframe المتوسط. وهو يؤثر فقط في إطار iframe الوسيطة، بدلاً من إطار iframe بنقرة واحدة. تتم إزالة واجهة مستخدم "النقرة الواحدة" قبل استدعاء معاودة الاتصال.

النوع مطلوبة مثال
الدالة اختيارية intermediate_iframe_close_callback: logBeforeClose

ITp_support

يحدّد هذا الحقل ما إذا كان يجب تفعيل تجربة المستخدم التي تمت ترقيتها من خلال One One على المتصفّحات التي تتوافق مع ميزة "التتبّع الذكي (ITP)". والقيمة التلقائية هي false. للحصول على مزيد من المعلومات، راجع الجدول التالي:

النوع مطلوبة مثال
منطقي اختيارية itp_support: true

الطريقة: google.accounts.id.prompt

تعرض طريقة google.accounts.id.prompt رسالة المطالبة بنقرة واحدة أو مدير بيانات الاعتماد الأصلي للمتصفِّح بعد استدعاء الطريقة initialize(). اطّلِع على مثال الرمز التالي للطريقة:

 google.accounts.id.prompt(/**
 @type{(function(!PromptMomentNotification):void)=} */ momentListener)

ويتم استدعاء الطريقة prompt() عادةً عند تحميل الصفحة. بسبب حالة الجلسة وإعدادات المستخدم من جانب Google، قد لا يتم عرض واجهة مستخدم المطالبة بنقرة واحدة. لتلقّي إشعارات حول حالة واجهة المستخدم في أوقات مختلفة، عليك تمرير دالة لتلقّي إشعارات حالة واجهة المستخدم.

يتم تنشيط الإشعارات في اللحظات التالية:

  • لحظة العرض: يحدث ذلك بعد استدعاء طريقة prompt(). ويحتوي الإشعار على قيمة منطقية تشير إلى ما إذا كانت واجهة المستخدم يتم عرضها أم لا.
  • اللحظة التي تم تخطيها: يحدث ذلك عندما يتم إغلاق رسالة المطالبة التي تتم بنقرة واحدة من خلال عملية إلغاء تلقائية أو إلغاء يدوي أو عند تعذُّر إصدار بيانات اعتماد من Google، مثل تسجيل خروج الجلسة المحددة من Google.

    في هذه الحالات، ننصحك بالاستمرار في موفّر الهوية التالي، إن وجد.

  • اللحظة المرفوضة: يحدث ذلك عندما يسترد Google بنجاح بيانات الاعتماد أو يريد المستخدم إيقاف مسار استرداد بيانات الاعتماد. على سبيل المثال، عندما يبدأ المستخدم في إدخال اسم المستخدم وكلمة المرور في مربّع حوار تسجيل الدخول، يمكنك استدعاء طريقة google.accounts.id.cancel() لإغلاق رسالة المطالبة بنقرة واحدة وتشغيل لحظة المرفوضة.

ونفِّذ مثال الرمز التالي اللحظة التي تم تخطيها:

<script>
  window.onload = function () {
    google.accounts.id.initialize(...);
    google.accounts.id.prompt((notification) => {
      if (notification.isNotDisplayed() || notification.isSkippedMoment()) {
        // continue with another identity provider.
      }
    });
  };
</script>

نوع البيانات: PromptPromptNotification

يسرد الجدول التالي طرق وأوصاف لنوع بيانات PromptMomentNotification:

الطريقة
isDisplayMoment() هل هذا الإشعار مخصّص لحظة عرض؟
isDisplayed() هل هذا الإشعار مخصّص للحظة، ويتم عرض واجهة المستخدم؟
isNotDisplayed() هل هذا الإشعار موجه للحظة، ولا يتم عرض واجهة المستخدم؟
getNotDisplayedReason()

السبب التفصيلي لعدم عرض واجهة المستخدم. إليك القيم المحتملة:

  • browser_not_supported
  • invalid_client
  • missing_client_id
  • opt_out_or_no_session
  • secure_http_required
  • suppressed_by_user
  • unregistered_origin
  • unknown_reason
isSkippedMoment() هل تم تخطي هذا الإشعار؟
getSkippedReason()

السبب التفصيلي للحظة التي تم تخطيها إليك القيم المحتملة:

  • auto_cancel
  • user_cancel
  • tap_outside
  • issuing_failed
isDismissedMoment() هل هذا الإشعار مخصّص للحظة المرفوضة؟
getDismissedReason()

السبب التفصيلي للإغلاق. في ما يلي القيم المحتمَلة:

  • credential_returned
  • cancel_called
  • flow_restarted
getMomentType()

عرض سلسلة لنوع اللحظة في ما يلي القيم المحتمَلة:

  • display
  • skipped
  • dismissed

نوع البيانات: CredentialResponse

عند استدعاء الدالة callback، يتم تمرير كائن CredentialResponse كمَعلمة. يسرد الجدول التالي الحقول المضمَّنة في كائن الاستجابة للاعتماد:

الحقل
credential هذا الحقل هو الرمز المميّز للمعرّف المعروض.
select_by يحدّد هذا الحقل كيفية اختيار بيانات الاعتماد.

بيانات الاعتماد

هذا الحقل هو الرمز المميّز للمعرّف كسلسلة JSON للترميز المميّز للويب (JWT).

عند فك ترميز، يبدو JWT المثال التالي:

header
{
  "alg": "RS256",
  "kid": "f05415b13acb9590f70df862765c655f5a7a019e", // JWT signature
  "typ": "JWT"
}
payload
{
  "iss": "https://accounts.google.com", // The JWT's issuer
  "nbf":  161803398874,
  "aud": "314159265-pi.apps.googleusercontent.com", // Your server's client ID
  "sub": "3141592653589793238", // The unique ID of the user's Google Account
  "hd": "gmail.com", // If present, the host domain of the user's GSuite email address
  "email": "elisa.g.beckett@gmail.com", // The user's email address
  "email_verified": true, // true, if Google has verified the email address
  "azp": "314159265-pi.apps.googleusercontent.com",
  "name": "Elisa Beckett",
                            // If present, a URL to user's profile picture
  "picture": "https://lh3.googleusercontent.com/a-/e2718281828459045235360uler",
  "given_name": "Elisa",
  "family_name": "Beckett",
  "iat": 1596474000, // Unix timestamp of the assertion's creation time
  "exp": 1596477600, // Unix timestamp of the assertion's expiration time
  "jti": "abc161803398874def"
}

يحتوي الحقل sub على معرّف فريد عالمي لحساب Google.

باستخدام الحقول email وemail_verified وhd، يمكنك تحديد ما إذا كانت Google تستضيف عنوان بريد إلكتروني وموثوقًا به. في الحالات التي تكون فيها Google موثوقة، يُعرف المستخدم حاليًا بأنه مالك الحساب القانوني.

الحالات التي تكون فيها Google موثوقة:

  • لدى email لاحقة @gmail.com، وهذا هو حساب Gmail.
  • email_verified صحيح وتم ضبط hd، هذا هو حساب G Suite.

يمكن للمستخدمين التسجيل في حسابات Google بدون استخدام Gmail أو G Suite. عندما لا يحتوي email على لاحقة @gmail.com ولا يكون hd متاحًا، لا يُنصح باستخدام Google أو كلمة المرور أو طرق الاختبار الأخرى للتحقق من المستخدم. قد يكون email_verfied صحيحًا أيضًا لأن Google أثبتت ملكية المستخدم في البداية عند إنشاء حساب Google، ولكن من المحتمل أن تكون ملكية حساب البريد الإلكتروني التابع لجهة خارجية قد تغيّرت منذ ذلك الحين.

Select_by

يسرد الجدول التالي القيم المحتملة للحقل select_by. يتم استخدام نوع الزر المستخدَم مع حالة الجلسة والموافقة على القيمة لضبط القيمة،

  • ضغط المستخدم على نقرة واحدة أو زر تسجيل الدخول باستخدام حساب Google أو استخدم عملية تسجيل الدخول التلقائي بدون تلامس الأجهزة.

  • تم العثور على جلسة حالية، أو تم اختيار المستخدم وتسجيل الدخول إلى حساب Google لإنشاء جلسة جديدة.

  • قبل مشاركة بيانات اعتماد الرمز المميّز للمعرّف مع تطبيقك، إما

    • الضغط على زر التأكيد لمنح موافقته على مشاركة بيانات الاعتماد
    • سبق أن منح الموافقة والموافقة على اختيار حساب لاختيار حساب Google.

تم ضبط قيمة هذا الحقل على أحد هذه الأنواع،

القيمة الوصف
auto تسجيل الدخول التلقائي لمستخدم لديه جلسة حالية سبق أن منح موافقته على مشاركة بيانات الاعتماد.
user ضغط مستخدم لديه جلسة حالية سبق له الحصول على الموافقة على نقرة واحدة &#39؛متابعة باسم&#39؛ لمشاركة بيانات الاعتماد.
user_1tap ضغط مستخدم لديه جلسة حالية على الزر One 'Continue باسم' لمنح الموافقة والموافقة على بيانات الاعتماد. ولا ينطبق هذا الإعداد سوى على الإصدار 75 والإصدارات الأحدث من Chrome.
user_2tap ضغط مستخدم بدون جلسة حالية على One Tap 'Continue as' لاختيار حساب ثم اضغط على زر "التأكيد" في نافذة منبثقة لمنح الموافقة ومشاركة بيانات الاعتماد. يسري ذلك على المتصفّحات غير المستندة إلى Chromium.
btn ضغط مستخدم لديه جلسة حالية منحَ سابقًا موافقته على زر "تسجيل الدخول باستخدام حساب Google" واختَر حساب Google من 'اختيار حساب&#39؛ لمشاركة بيانات الاعتماد.
btn_confirm ضغط مستخدم لديه جلسة حالية على الزر "تسجيل الدخول باستخدام حساب Google" واضغط على زر التأكيد لمنح الموافقة ومشاركة بيانات الاعتماد.
btn_add_session تم الضغط على الزر "تسجيل الدخول باستخدام حساب Google" من قِبل مستخدم لم يتمكن من جلسة حالية وسبق أن منح موافقته اختيار حساب على Google ومشاركة بيانات الاعتماد.
btn_confirm_add_session ضغط مستخدم ليس لديه جلسة حالية على زر "تسجيل الدخول باستخدام حساب Google" لاختيار حساب على Google، ثم ضغط على الزر "تأكيد" للموافقة على بيانات الاعتماد ومشاركتها.

الطريقة: google.accounts.id.renderButton

تعرض طريقة google.accounts.id.renderButton زر تسجيل الدخول باستخدام حساب Google على صفحات الويب.

اطّلِع على مثال الرمز التالي للطريقة:

google.accounts.id.renderButton(
      /** @type{!HTMLElement} */ parent,
      /** @type{!GsiButtonConfiguration} */ options
    )

نوع البيانات: GsiButtonConfiguration

يسرد الجدول التالي الحقول والأوصاف لنوع البيانات GsiButtonConfiguration.

السمة
type نوع الزر: رمز أو زر عادي.
theme مظهر الزر. على سبيل المثال، السفر_أزرق أو_أسود_مملوء.
size حجم الزر. مثل "كبير" أو "كبير".
text نص الزر. على سبيل المثال، &"تسجيل الدخول باستخدام حساب Google&;; أو "الاشتراك باستخدام Google"
shape شكل الزر على سبيل المثال، شكل مستطيل أو دائري.
logo_alignment محاذاة شعار Google: إلى اليسار أو الوسط.
width عرض الزر، بالبكسل.
locale وفي حال ضبطها، يتم عرض لغة الزر.

أنواع السمات

تتضمّن الأقسام التالية تفاصيل عن نوع كل سمة، ومثال على ذلك.

كتابة

نوع الزر. القيمة التلقائية هي standard.

للحصول على مزيد من المعلومات، راجع الجدول التالي:

النوع مطلوبة مثال
string نعم type: "icon"

يسرد الجدول التالي أنواع الأزرار المتاحة وأوصافها:

النوع
standard زر يحتوي على نص أو معلومات مخصصة:
icon زر للرمز بدون نص:

الموضوع

مظهر الزر. القيمة التلقائية هي outline. للحصول على مزيد من المعلومات، يمكنك الاطّلاع على الجدول التالي:

النوع مطلوبة مثال
string اختيارية theme: "filled_blue"

يسرد الجدول التالي المظاهر وأوصافها:

المظهر
outline مظهر زر عادي:
filled_blue مظهر زرّ ممتلئ باللون الأزرق:
filled_black مظهر زر ممتلئ باللون الأسود:

size

حجم الزر. القيمة التلقائية هي large. للحصول على مزيد من المعلومات، يمكنك الاطّلاع على الجدول التالي:

النوع مطلوبة مثال
string اختيارية size: "small"

يسرد الجدول التالي أحجام الأزرار المتاحة وأوصافها:

حجم الملف
large زرّ كبير:
زر عادي كبير زرّ رمز كبير زرّ كبير ومخصّص
medium زرّ متوسط الحجم:
زر عادي متوسط زر رمز متوسط
small زر صغير:
زر صغير زر رمز صغير

إرسال رسالة نصية

نص الزر. القيمة التلقائية هي signin_with. ليس هناك اختلافات مرئية في نص أزرار الرموز التي تتضمن سمات text مختلفة. ولكن الاستثناء الوحيد هو قراءة النص لتسهيل استخدام الشاشة.

للحصول على مزيد من المعلومات، راجع الجدول التالي:

النوع مطلوبة مثال
string اختيارية text: "signup_with"

يسرد الجدول التالي نصوص الأزرار المتاحة وأوصافها:

مراسلة نصية
signin_with نص الزر هو "تسجيل الدخول باستخدام حساب Google":
signup_with نص الزر هو "الاشتراك مع Google":
continue_with نص الزر هو "المتابعة مع Google":
signin نص الزر هو "تسجيل الدخول":

shape

شكل الزر القيمة التلقائية هي rectangular. اطلِع على الجدول التالي للحصول على مزيد من المعلومات:

النوع مطلوبة مثال
string اختيارية shape: "rectangular"

يسرد الجدول التالي أشكال الأزرار المتاحة وأوصافها:

شكل
rectangular زر مستطيل. إذا تم استخدامه لنوع الزر icon، يتم استخدام الرمز square.
pill زر على شكل حبوب. إذا تم استخدامه لنوع الزر icon، يتم استخدامه حينئذٍ مثل circle.
circle زر على شكل دائرة. وإذا تم استخدامها لنوع الزر standard، يتم استخدام السمة pill.
square زر على شكل مربّع. وإذا تم استخدامها لنوع الزر standard، يتم استخدام السمة rectangular.

محاذاة_الشعار

محاذاة شعار Google. القيمة التلقائية هي left. لا تنطبق هذه السمة إلا على نوع زر standard. اطلِع على الجدول التالي للحصول على مزيد من المعلومات:

النوع مطلوبة مثال
string اختيارية logo_alignment: "center"

يسرد الجدول التالي المحاذاة المتاحة وأوصافها:

محاذاة_الشعار
left لمحاذاة شعار Google.
center محاذاة لشعار Google في الوسط.

العرض

الحد الأدنى لعرض الزر بالبكسل. الحد الأقصى للعرض هو 400 بكسل.

للحصول على مزيد من المعلومات، راجع الجدول التالي:

النوع مطلوبة مثال
string اختيارية width: 400

locale

اللغة المحددة مسبقًا لنص الزر. وفي حال عدم تحديده، يتم استخدام اللغة التلقائية للمتصفح أو تفضيل مستخدم جلسة Google. لذلك، قد تظهر للمستخدمين المختلفين إصدارات مختلفة من الأزرار المترجَمة، وقد تكون بأحجام مختلفة.

للحصول على مزيد من المعلومات، راجع الجدول التالي:

النوع مطلوبة مثال
string اختيارية locale: "zh_CN"

نوع البيانات: بيانات الاعتماد

عند استدعاء الدالة native_callback، يتم تمرير العنصر Credential كمَعلمة. يسرد الجدول التالي الحقول المضمَّنة في العنصر:

الحقل
id تحدِّد هوية المستخدم.
password كلمة المرور

الطريقة: google.accounts.id.disableAutoSelect

عندما يسجّل المستخدم الخروج من موقعك الإلكتروني، عليك استدعاء الطريقة google.accounts.id.disableAutoSelect لتسجيل الحالة في ملفات تعريف الارتباط. ويؤدي هذا الإجراء إلى منع التكرار المتكرّر في تجربة المستخدم. يمكنك الاطّلاع على مقتطف الرمز التالي للطريقة:

google.accounts.id.disableAutoSelect()

يوضّح مثال الرمز التالي طريقة google.accounts.id.disableAutoSelect مع الدالة onSignout():

<script>
  function onSignout() {
    google.accounts.id.disableAutoSelect();
  }
</script>

الطريقة: google.accounts.id.storeCredential

هذه الطريقة هي برنامج تضمين بسيط لطريقة store() في واجهة برمجة تطبيقات إدارة بيانات الاعتماد الأصلية للمتصفِّح. لذلك، لا يمكن استخدامها إلا لتخزين بيانات اعتماد كلمة المرور. اطّلِع على مثال الرمز التالي للطريقة:

google.accounts.id.storeCredential(Credential, callback)

يوضّح مثال الرمز التالي طريقة google.accounts.id.storeCredential مع الدالة onSignIn():

<script>
  function onSignIn() {
    let cred = {id: '...', password: '...'};
    google.accounts.id.storeCredential(cred);
  }
</script>

الطريقة: google.accounts.id.cancel

يمكنك إلغاء مسار One Tap إذا أزلت رسالة المطالبة من الطرف الاعتماد. يتم تجاهل عملية الإلغاء إذا تم اختيار بيانات الاعتماد مسبقًا. يمكنك الاطّلاع على مثال الرمز التالي للطريقة:

google.accounts.id.cancel()

ينفذ مثال الرمز التالي طريقة google.accounts.id.cancel() مع دالة onNextButtonClicked():

<script>
  function onNextButtonClicked() {
    google.accounts.id.cancel();
    showPasswordPage();
  }
</script>

معاودة الاتصال بتحميل المكتبة: onGoogleLibraryLoad

يمكنك تسجيل معاودة اتصال من onGoogleLibraryLoad. ويتم إشعاره بعد تحميل مكتبة تسجيل الدخول باستخدام JavaScript في Google:

window.onGoogleLibraryLoad = () => {
    ...
};

معاودة الاتصال هذه هي اختصار لمعاودة الاتصال window.onload. ليس هناك اختلافات في السلوك.

نفّذ مثال الرمز التالي استدعاء onGoogleLibraryLoad:

<script>
  window.onGoogleLibraryLoad = () => {
   google.accounts.id.initialize({
     ...
   });
   google.accounts.id.prompt();
  };
</script>

الطريقة: google.accounts.id.revoke

تؤدي طريقة google.accounts.id.revoke إلى إبطال منحة OAuth المستخدمة لمشاركة الرمز المميَّز للرقم التعريفي للمستخدم المُحدَّد. يمكنك الاطّلاع على مقتطف الرمز التالي للطريقة: google.accounts.id.revoke(hint, callback)

المعلمة النوع الوصف
hint string عنوان البريد الإلكتروني أو المعرّف الفريد لحساب المستخدم على Google. رقم التعريف هو الخاصية sub لحمولة بيانات الاعتماد.
callback الدالة معالج RevocationResponse الاختياري.

يوضّح نموذج الرمز التالي كيفية استخدام طريقة revoke مع رقم تعريف.

  google.accounts.id.revoke('1618033988749895', done => {
    console.log(done.error);
  });

نوع البيانات: RevocationResponse

عند استدعاء الدالة callback، يتم تمرير كائن RevocationResponse كمَعلمة. يسرد الجدول التالي الحقول المتوفرة في عنصر الاستجابة للإبطال:

الحقل
successful هذا الحقل هو القيمة المعروضة لاستدعاء الطريقة.
error يتضمن هذا الحقل اختياريًا رسالة استجابة خطأ.

ناجحة

هذا الحقل هو قيمة منطقية تم ضبطها على "صحيح" إذا تم استدعاء طريقة الإبطال بنجاح أو تم ضبطها على "خطأ" إذا تعذّر تنفيذ الإجراء.

خطأ

هذا الحقل عبارة عن قيمة سلسلة ويحتوي على رسالة خطأ تفصيلية في حال فشل استدعاء طريقة الإبطال، يعني ذلك أنها غير ناجحة.