תחילת העבודה עם ספריית הלקוח של Java

כדי להתחיל להשתמש ב-Google Photos Library API עם ספריית הלקוח של Java, צריך: להגדיר את ספריית הלקוח בסביבת הפיתוח שלכם. לפני כן, צריך להגדיר את הפרויקט על ידי הפעלת ה-API דרך מסוף Google API ומגדירים מזהה לקוח OAuth 2.0.

האפליקציה מקיימת אינטראקציה עם Google Photos בשם משתמש ב-Google Photos. למשל, כשיוצרים אלבומים ספריית Google Photos או העלאת פריטי מדיה לחשבון של משתמש חשבון Google Photos, המשתמש אישר את בקשות ה-API האלה דרך פרוטוקול OAuth 2.0.

מזהה הלקוח ב-OAuth 2.0 מאפשר למשתמשי האפליקציה להיכנס לחשבון, לבצע אימות וכך להשתמש ב-Library API. ה-Library API לא תומך חשבונות שירות; כדי להשתמש ב-API הזה, המשתמשים חייבים להיכנס לחשבון Google תקין חשבון.

הגדרת האפליקציה

הפעלת ה-API

לפני שתוכלו להשתמש ב-Library API, עליכם להפעיל אותו בפרויקט שלכם.

  1. עוברים אל Google API Console.
  2. בסרגל התפריטים, בוחרים פרויקט או יוצרים פרויקט חדש.
  3. כדי לפתוח את ספריית Google API, בתפריט הניווט בוחרים ממשקי API שירותים > ספרייה.
  4. מחפשים את Google Photos Library API. בוחרים את התוצאה המתאימה ולוחצים על הפעלה.

בקשת מזהה לקוח ב-OAuth 2.0

כדי לבקש מזהה לקוח ב-OAuth ולהגדיר אותו עבור תרגום מכונה. בדוגמה הזו נעשה שימוש באפליקציה שבה כל זרימת OAuth בצד השרת, כמו זה שמופיע בדוגמאות שלנו. תהליך ההגדרה עשוי להשתנות לתרחישי הטמעה אחרים.

  1. עוברים אל Google API Console ובוחרים את הפרויקט.
  2. בתפריט, בוחרים באפשרות APIs & שירותים > פרטי כניסה.
  3. בדף Credentials, לוחצים על Create Credentials > מזהה הלקוח ב-OAuth.
  4. בוחרים את Application type (סוג האפליקציה). בדוגמה הזו, סוג האפליקציה הוא אפליקציית אינטרנט.
  5. רישום המקורות שמהם האפליקציה מורשית לגשת ל-Google APIs ככה:

    1. כדי לזהות את מזהה הלקוח, מזינים שם.
    2. בשדה מקורות JavaScript מורשים, מזינים את המקור של אפליקציה. בשדה הזה אי אפשר להשתמש בתווים כלליים לחיפוש.

      אפשר להזין כמה מקורות כדי לאפשר לאפליקציה לפעול במכשירים שונים פרוטוקולים, דומיינים או תת-דומיינים. כתובות ה-URL שהזנת יכולות להתחיל בקשת OAuth.

      הדוגמה הבאה מציגה כתובת URL לפיתוח מקומי (הדוגמאות שלנו כוללות localhost:8080) וכתובת URL לסביבת הייצור.

      http://localhost:8080
      https://myproductionurl.example.com
      
    3. השדה Authorized Redirect URI הוא נקודת הקצה שמקבלת תגובות משרת OAuth 2.0. בדרך כלל, העדכון הזה כולל ואת סביבת הפיתוח ומצביעה על נתיב באפליקציה.

      http://localhost:8080/auth/google/callback
      https://myproductionurl.example.com/auth/google/callback
      
    4. לוחצים על יצירה.

  1. מתיבת הדו-שיח של לקוח OAuth שמתקבלת, מורידים את קובץ ה-JSON שמכיל את תצורת הלקוח שלך. פרטי הלקוח כוללים את הבאים:

    • Client-ID
    • סוד לקוח

    ייעשה שימוש בקובץ ה-JSON הזה בהמשך כדי להגדיר ספריית Google Auth ל-Java שפועלת עם ספריית הלקוח הזו.

לפני שמפעילים אפליקציה ציבורית שניגשת ל-Library API, האפליקציה חייבת להיבדק על ידי Google. 'אפליקציה לא מאומתת' ההודעה תופיע בזמן בדיקת האפליקציה, עד מאומת.

הגדרה של ספריית הלקוח

ספריית הלקוח של Java מטפלת עבורכם בכל הקריאות ל-API בקצה העורפי, וחושפת את המשתמשים אובייקטים ידידותיים לעבודה, כולל דוגמאות קוד לכמה משימות API נפוצות. קודם כול, מורידים ומתקינים את ספריית הלקוח של Google Photos Library API ל-Java עם יחסי התלות מ-GitHub. לאחר מכן, מגדירים את פרטי הכניסה של OAuth2 ל-Java.

אפשרויות הורדה

יש כמה דרכים להוריד את ספריית הלקוח:

  • תלות ב-Gradle:

    כדי להשתמש בספרייה הזו עם Gradle, צריך להוסיף את התלות הבאה קובץ build.gradle.

    repositories {
      mavenCentral()
    }
    dependencies {
      compile 'com.google.photos.library:google-photos-library-client:1.7.3'
    }
    
  • תלות של Maven:

    כדי להשתמש בספרייה הזו עם Maven, צריך להוסיף את הפריטים הבאים ל-pom.xml של Maven חדש.

    <dependency>
      <groupId>com.google.photos.library</groupId>
      <artifactId>google-photos-library-client</artifactId>
      <version>1.7.3</version>
    </dependency>
    
  • כדי להוריד גרסה:

    דף פריטי התוכן מכיל פריטי מידע שונים לכל גרסה של ספרייה, כולל קובצי מאגר.

  • משכפלים את המאגר:

    כדאי להשתמש בשיטה הזו אם אתם רוצים לשנות את הספרייה הזו או לתרום לה, למשל, שליחת בקשות משיכה או אם אתם רוצים לנסות את הדוגמאות שלנו. אחרי ש לשכפל את המאגר, תתבצע הורדה של כל הקבצים במאגר.

    1. הריצו את git clone https://github.com/google/java-photoslibrary.git ב- שורת הפקודה.
    2. תקבלו ספרייה של java-photoslibrary. כדי להגיע ליעד, מריצים את cd java-photoslibrary
    3. יש לפתוח את הקובץ build.gradle בסביבת הפיתוח המשולבת (IDE) או להריץ את ./gradlew assemble שורת הפקודה כדי לבנות את הפרויקט. אפשר לראות אותן בכתובת ./gradlew tasks למשימות זמינות.

הגדרת פרטי כניסה של OAuth2 ל-Java

ספריית הלקוח הזו פועלת עם ספריית Google Auth עבור Java. לקבלת מידע נוסף, קראו את המאמר שימוש ב-OAuth 2.0 עם ספריית הלקוח של Google API עבור Java.

צריך לציין את הגדרת ה-OAuth של הלקוח בCredentialsProvider כש שיוצרות את PhotoLibrarySettings לאובייקט PhotosLibraryClient.

רוצה לנסות כמה דוגמאות?

כדאי לנסות את הקוד שבהמשך כדי לבצע את הקריאה הראשונה ל-API באמצעות ספריית הלקוח של Java.

// Set up the Photos Library Client that interacts with the API
PhotosLibrarySettings settings =
     PhotosLibrarySettings.newBuilder()
    .setCredentialsProvider(
        FixedCredentialsProvider.create(/* Add credentials here. */)) 
    .build();

try (PhotosLibraryClient photosLibraryClient =
    PhotosLibraryClient.initialize(settings)) {

    // Create a new Album  with at title
    Album createdAlbum = photosLibraryClient.createAlbum("My Album");

    // Get some properties from the album, such as its ID and product URL
    String id = album.getId();
    String url = album.getProductUrl();

} catch (ApiException e) {
    // Error during album creation
}

יש עוד דוגמאות כדי לנסות זאת ב-GitHub.