تدفقات OAuth على سطح المكتب وتطبيقات الويب

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

إنشاء بيانات اعتماد OAuth2

  1. اتّبِع الخطوات من أجل ضبط مشروع على وحدة تحكُّم Google API لواجهة برمجة التطبيقات مع "إعلانات Google".

  2. نزِّل ملف JSON للعميل عن طريق النقر أولاً على رمز تنزيل عميل OAuth ثم الزر تنزيل JSON على الشاشة التالية.

    احفظ الملف في الدليل الرئيسي بحيث يكون لديك الآن الملف المحلي ~/client_secret_XXX.apps.googleusercontent.com.json (حيث ستكون XXX قيمًا خاصة بمشروعك). سنستخدم هذا الملف في الخطوة التالية لتشغيل مثال التعليمة البرمجية.

إعداد مكتبة العملاء

  1. في الوحدة الطرفية، شغِّل مثال GenerateUserCredentials. استخدِم علامات سطر الأوامر لتمرير ملف JSON الذي نزّلته في الخطوة السابقة.

    للتشغيل من سطر الأوامر باستخدام Gradle

    ./gradlew --console=plain --quiet runExample \
      --example="authentication.GenerateUserCredentials \
      --oAuthClientFile ${HOME}/client_secret_XXX.apps.googleusercontent.com.json"
    
  2. سيطلب منك المثال الانتقال إلى عنوان URL حيث ستحتاج إلى السماح لبيانات اعتماد OAuth2 بالوصول إلى حسابك على "إعلانات Google" نيابةً عنك.

    Paste this URL in your browser:
    https://accounts.google.com/o/oauth2/auth?access_type=offline&client_id=****...
    

    انتقِل إلى عنوان URL في جلسة متصفّح خاصة أو في نافذة تصفّح متخفٍ. سجِّل الدخول باستخدام حساب Google نفسه الذي تستخدمه للوصول إلى "إعلانات Google". انقر على متابعة في شاشة طلب الموافقة OAuth2.

    شاشة الموافقة

  3. وسيتم نقلك إلى صفحة تحتوي على رسالة تشير إلى نجاح التفويض.

    تم استرداد رمز التفويض بنجاح.

    يمكنك الاطّلاع على نتائج وحدة التحكّم من GenerateUserCredentials للحصول على مزيد من التعليمات.

  4. ارجِع إلى وحدة التحكّم التي تشغل فيها المثال. ستلاحظ أنّ المثال قد اكتمل ويعرض الرمز المميّز لإعادة التحميل وبعض التعليمات، يليها الخصائص التي ستحتاج إليها لإعداد مكتبة العميل:

    #Mon Apr 18 09:07:51 EDT 2022
    api.googleads.refreshToken=1/Yw.........................................
    api.googleads.clientId=...........-...............apps.googleusercontent.com
    api.googleads.developerToken=INSERT_DEVELOPER_TOKEN_HERE
    api.googleads.clientSecret=........................
    
  5. انسخ الأسطر من تعليق التاريخ # إلى نهاية الإخراج في ملف ads.properties.

    استبدِل INSERT_DEVELOPER_TOKEN_HERE بالرمز المميز للمطوِّر.

    لإجراء عملية الإعداد الأسهل، ضَع ملف ads.properties في الدليل الرئيسي.