l Google Analytics --> ‪ sharkut00 التخطي إلى المحتوى الرئيسي
// حقوق الطبع والنشر 2014 شركة جوجل جميع الحقوق محفوظة. // // مرخص تحت رخصة أباتشي، الإصدار 2.0 ("الترخيص")؛ // لا يجوز لك استخدام هذا الملف إلا وفقا للترخيص. // تستطيع الحصول على نسخة من الرخصة في // // المتشعب: //www.apache. ORG / تراخيص / رخصة 2.0 // // ما لم يقتضيه القانون الساري المفعول أو المتفق عليها في الكتابة، والبرمجيات // زعت بموجب يتم توزيع الترخيص على أساس "كما هي" أساس، // دون ضمانات أو شروط من أي نوع، سواء كانت صريحة أو ضمنية. // راجع رخصة للأذونات الحكم لغة معينة و // القيود تحت رخصة. حزمة dfp.axis.auth. استيراد com.google.api.ads.common.lib.conf.ConfigurationLoadException. استيراد الاستيراد، استيراد com.google.api.ads.dfp.axis.v201408.Network. استيراد com.google.api.ads.dfp.axis.v201408.NetworkServiceInterface. استيراد com.google.api.ads.dfp.lib.client.DfpSession. استيراد com.google.api.client.auth.oauth2.Credential. استيراد com.google.api.client.googleapis.auth.oauth2.GoogleAuthorizationCodeFlow. استيراد com.google.api.client.googleapis.auth.oauth2.GoogleAuthorizationCodeTokenRequest. com.google.api.client.googleapis.auth.oauth2.GoogleTokenResponse الاستيراد، استيراد com.google.api.client.http.javanet.NetHttpTransport. استيراد com.google.api.client.json.jackson2.JacksonFactory. استيراد com.google.api.client.util.store.DataStoreFactory. استيراد com.google.api.client.util.store.MemoryDataStoreFactory. com.google.common.collect.Lists الاستيراد، استيراد java.io.BufferedReader. استيراد java.io.IOException. استيراد java.io.InputStreamReader. / ** * يوضح هذا المثال كيفية إنشاء كائن الاعتمادات من الصفر.
* هذا المثال * لا * يعني ليتم استخدامها مع أمثلة أخرى لدينا، ولكن يظهر * كيف يمكن استخدام المكتبات العامة OAuth2 لإضافة OAuth2 إلى * التطبيقات الموجودة لديك.
*
* للحصول على بديل لحسابات الخدمة، والتطبيقات المثبتة، أو على شبكة الإنترنت * التطبيقات التي لن تحتاج إلى عدة مستخدمين تسجيل الدخول باستخدام * OfflineCredentials لتوليد OAuth2 للتحديث * الاعتماد بدلا من ذلك سيكون أسهل بكثير. * آدم * مؤلف Rogal * / AdvancedCreateCredentialFromScratch الطبقة الجمهور { الخاص ثابت النهائي SCOPE سلسلة = "https://www.googleapis.com/auth/dfp". // URL هذا الاستدعاء سوف يسمح لك لنسخ رمز من الشاشة النجاح. // هذا يجب أن يطابق واحد المرتبطة ID العميل الخاص بك. خاص ثابت نهائي CALLBACK_URL سلسلة = "جرة: IETF: WG: أوث: 2.0: OOB". // إذا لم يكن لديك هوية العميل أو السري، يرجى إنشاء واحد في // حدة API: https://code.google.com/apis/console#access الخاص ثابت النهائي CLIENT_ID سلسلة = "INSERT_CLIENT_ID_HERE". خاص ثابت نهائي CLIENT_SECRET سلسلة = "INSERT_CLIENT_SECRET_HERE". // المستخدم الحالي الذي يتم توثيقه. هذا هو عادة مفتاح أساسي // أنت تعرف نفسك أنك سوف رجوع إليه لاحقا في التعليمات البرمجية عند // يمكنك استرجاع الاعتماد لهذا المستخدم. خاصة ثابتة نهائي USER_ID سلسلة = "INSERT_USER_ID_HERE". الخاص يأذن الفراغ ثابت (DataStoreFactory storeFactory، سلسلة رقم العضوية) رميات استثناء {// اعتمادا على التطبيق الخاص بك، قد يكون هناك طرق أكثر ملاءمة من // أداء تدفق التفويض (مثل على بريمج)، انظر // HTTPS: // مدونة. google.com / ع / جوجل- API- جافا العميل / ويكي / OAuth2 # Authorization_Code_Flow // لمزيد من المعلومات. GoogleAuthorizationCodeFlow authorizationFlow = GoogleAuthorizationCodeFlow.Builder جديدة (NetHttpTransport جديدة ()، JacksonFactory جديدة ()، CLIENT_ID، CLIENT_SECRET، Lists.newArrayList (SCOPE)) .setDataStoreFactory (storeFactory) // تعيين نوع الوصول إلى متصل بحيث يمكن أن يكون الرمز المميز منتعشة. // افتراضيا، فإن تحديث المكتبة تلقائيا الرموز عندما // يمكن، ولكن هذا يمكن إيقاف من خلال وضع // api.dfp.refreshOAuth2Token = كاذبة في ملف ads.properties الخاص بك. . .setAccessType ("حاليا") بناء ()؛ سلسلة authorizeUrl = authorizationFlow.newAuthorizationUrl () setRedirectUri (CALLBACK_URL). البناء ()؛ System.out.println ("لصق هذا العنوان في المتصفح الخاص بك: \ ن" + + authorizeUrl '\ ن')؛ // انتظر رمز ترخيص. System.out.println ("اكتب الرمز الذي تلقيته هنا:")؛ سلسلة authorizationCode = BufferedReader الجديد (InputStreamReader الجديد (System.in)) ريدلاين ()؛ // تخويل الرمز المميز OAuth2. GoogleAuthorizationCodeTokenRequest tokenRequest = authorizationFlow.newTokenRequest (authorizationCode). tokenRequest.setRedirectUri (CALLBACK_URL). GoogleTokenResponse tokenResponse = tokenRequest.execute ()؛ // تخزين الاعتماد للمستخدم. authorizationFlow.createAndStoreCredential (tokenResponse، رقم العضوية). } الخاص ثابت DfpSession createDfpSession (DataStoreFactory storeFactory، سلسلة رقم العضوية) يلقي IOException، ValidationException، ConfigurationLoadException {// إنشاء GoogleCredential مع الحد الأدنى من المعلومات. GoogleAuthorizationCodeFlow authorizationFlow = GoogleAuthorizationCodeFlow.Builder جديدة (NetHttpTransport جديدة ()، JacksonFactory جديدة ()، CLIENT_ID، CLIENT_SECRET، Lists.newArrayList (SCOPE)) .setDataStoreFactory (storeFactory). البناء ()؛ // تحميل الاعتماد. الاعتماد الاعتماد = authorizationFlow.loadCredential (رقم العضوية). // أنشئ DfpSession. العودة DfpSession.Builder جديدة () .fromFile () .withOAuth2Credential (الاعتماد). البناء ()؛} runExample الفراغ ثابت الجمهور (DfpServices dfpServices، جلسة DfpSession) رميات استثناء {// الحصول على NetworkService. NetworkServiceInterface networkService = dfpServices.get (الدورة، NetworkServiceInterface.class). // يحصل على الشبكة الحالية. شبكة شبكة networkService.getCurrentNetwork = ()؛ System.out.printf ("الشبكة الحالية لديها قانون شبكة \"٪ ق \ "وعرض اسم \"٪ ق \، network.getNetworkCode ()، network.getDisplayName () "\ ن ")؛ } ساكنة باطلة الرئيسي (الخيط [سائط]) رميات استثناء العامة {إذا كان (CLIENT_ID.equals ("INSERT_CLIENT_ID_HERE") || CLIENT_SECRET.equals ("INSERT_CLIENT_SECRET_HERE")) {رمي IllegalArgumentException الجديد ("الرجاء إدخال معرفات العميل الخاص بك أو سرا "+" انظر https://code.google.com/apis/console#access ")؛ } // ويوصى بشدة أن استخدام مخزن بيانات الاعتماد الخاصة بك في // تطبيق لتخزين بيانات الاعتماد لكل مستخدم. // انظر: https://code.google.com/p/google- العميل أوث-جافا- / ويكي / OAuth2 DataStoreFactory storeFactory = MemoryDataStoreFactory جديدة ()؛ // تخويل وتخزين الاعتماد الخاصة بك. يأذن (storeFactory، USER_ID). // إنشاء DfpSession من مخزن بيانات الاعتماد. سوف تفعل عادة هذا // في اعتراضية بريمج لتطبيق ويب أو في موضوع منفصل // التطبيق دون اتصال. DfpSession dfpSession = createDfpSession (storeFactory، USER_ID). DfpServices dfpServices = DfpServices جديدة ()؛ runExample (dfpServices، dfpSession). }}












{"التبعيات": {"المتزامن-المستمع": "0.4.5"}، "صفا": "Node.js المتزامن التعريف وحدة المعالجة المركزية"، "devDependencies": {"القهوة النصي": "آخر"}، "محركات ": {" العقدة ":"> = 0.8.0 "}،" موقع ":" https://github.com/ConradIrwin/async-محة "،" تراخيص ": [{" اكتب ":" MIT "، "URL": "https://github.com/ConradIrwin/async نبذة عن"}]، "الرئيسي": "ليب / index.js"، "مشرفون": [{"البريد الإلكتروني": "conrad@bugsnag.com "،" اسم ":" كونراد اروين "}]،" اسم ":" المتزامن-محة "،" مستودع ": {" اكتب ":" بوابة "،" URL ":" https://github.com/ConradIrwin / المتزامن نبذة عن "}،" مخطوطات ": {" prepublish ":" القهوة -c -O SRC ليب / * "}،" الإصدار ":" 0.2.2 "}

تعليقات

المشاركات الشائعة من هذه المدونة

Weight gain in the twenties raise the proportion of cardiac hypertrophy in old age

Weight gain in the twenties raise the proportion of cardiac hypertrophy in old age

سبحان الله شجرة غريبة في اعماق البحر ، إذا لمستها !