หากต้องการเริ่มใช้ 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 ให้กับโปรเจ็กต์ก่อนจึงจะใช้ Library API ได้
- ไปที่คอนโซล Google API
- จากแถบเมนู ให้เลือกโปรเจ็กต์หรือสร้างโปรเจ็กต์ใหม่
- หากต้องการเปิดไลบรารี Google API ให้เลือก API และบริการ > ไลบรารีจากเมนูการนำทาง
- ค้นหา "Google Photos Library API" เลือกผลการค้นหาที่ถูกต้องแล้วคลิกเปิดใช้
ขอรหัสไคลเอ็นต์ OAuth 2.0
ทำตามขั้นตอนด้านล่างเพื่อขอรหัสไคลเอ็นต์ OAuth และกำหนดค่าสำหรับแอปพลิเคชัน ตัวอย่างนี้ใช้แอปพลิเคชันที่จัดการโฟลว์ OAuth ทั้งหมดฝั่งเซิร์ฟเวอร์ อย่างเช่นในตัวอย่างของเรา ขั้นตอนการตั้งค่าอาจแตกต่างกันไปตามสถานการณ์การใช้งานอื่นๆ
- ไปที่คอนโซล Google API แล้วเลือกโปรเจ็กต์
- จากเมนู ให้เลือก API และบริการ > ข้อมูลเข้าสู่ระบบ
- ในหน้าข้อมูลเข้าสู่ระบบ ให้คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
- เลือกประเภทแอปพลิเคชัน ในตัวอย่างนี้ ประเภทแอปพลิเคชันคือเว็บแอปพลิเคชัน
ลงทะเบียนต้นทางที่แอปของคุณได้รับอนุญาตให้เข้าถึง Google API ดังนี้
- หากต้องการระบุรหัสไคลเอ็นต์ ให้ป้อนชื่อ
ในช่องต้นทาง JavaScript ที่ได้รับอนุญาต ให้ป้อนต้นทางสำหรับแอป โดยช่องนี้ไม่อนุญาตให้ใช้ไวลด์การ์ด
คุณป้อนต้นทางหลายรายการเพื่อให้แอปทำงานบนโปรโตคอล โดเมน หรือโดเมนย่อยต่างๆ ได้ URL ที่คุณป้อนจะเริ่มส่งคำขอ OAuth ได้
ตัวอย่างต่อไปนี้แสดง URL การพัฒนาในเครื่อง (ตัวอย่างของเราใช้
localhost:8080
) และ URL เวอร์ชันที่ใช้งานจริงhttp://localhost:8080 https://myproductionurl.example.com
ช่อง URI การเปลี่ยนเส้นทางที่ได้รับอนุญาตคือปลายทางที่รับการตอบกลับจากเซิร์ฟเวอร์ OAuth 2.0 โดยปกติแล้วจะรวมถึงสภาพแวดล้อมในการพัฒนาและชี้ไปยังเส้นทางในแอปพลิเคชันของคุณ
http://localhost:8080/auth/google/callback https://myproductionurl.example.com/auth/google/callback
คลิกสร้าง
-
จากกล่องโต้ตอบไคลเอ็นต์ OAuth ที่ปรากฏ ให้ดาวน์โหลดไฟล์ JSON ที่มีการกำหนดค่าไคลเอ็นต์ รายละเอียดของไคลเอ็นต์ประกอบด้วยข้อมูลต่อไปนี้
- Client-ID
- รหัสลับไคลเอ็นต์
ระบบจะใช้ไฟล์ JSON นี้เพื่อตั้งค่าไลบรารีการตรวจสอบสิทธิ์ของ Google สำหรับ Java ซึ่งทำงานร่วมกับไลบรารีของไคลเอ็นต์นี้ในภายหลัง
ก่อนที่คุณจะสามารถเปิดแอปพลิเคชันสาธารณะที่เข้าถึง Library API ได้ Google ต้องตรวจสอบแอปของคุณก่อน ข้อความ "แอปที่ไม่ได้รับการยืนยัน" จะปรากฏบนหน้าจอเมื่อคุณทดสอบแอปพลิเคชัน จนกว่าจะได้รับการยืนยัน
ตั้งค่าไลบรารีของไคลเอ็นต์
ไลบรารีของไคลเอ็นต์ Java จะจัดการการเรียก API แบ็กเอนด์ทั้งหมดให้คุณ และแสดงออบเจ็กต์ที่ช่วยให้ใช้งานด้วยได้ ซึ่งรวมถึงตัวอย่างโค้ดสำหรับงาน API ทั่วไปบางรายการ ก่อนอื่น ให้ดาวน์โหลดและติดตั้งไลบรารีของไคลเอ็นต์ Google Photos Library API สำหรับ Java พร้อมทรัพยากร Dependency จาก GitHub จากนั้นตั้งค่าข้อมูลเข้าสู่ระบบ OAuth2 สำหรับ Java
ตัวเลือกการดาวน์โหลด
ตัวเลือกในการดาวน์โหลดไลบรารีของไคลเอ็นต์มีดังนี้
การอ้างอิง Gradle:
หากต้องการใช้ไลบรารีนี้กับ Gradle ให้เพิ่มทรัพยากร Dependency ต่อไปนี้ไปยังไฟล์
build.gradle
ของคุณrepositories { mavenCentral() } dependencies { compile 'com.google.photos.library:google-photos-library-client:1.7.3' }
ทรัพยากร Dependency ของ Maven:
หากต้องการใช้ไลบรารีนี้กับ Maven ให้เพิ่มรายการต่อไปนี้ลงในไฟล์
pom.xml
ของ Maven<dependency> <groupId>com.google.photos.library</groupId> <artifactId>google-photos-library-client</artifactId> <version>1.7.3</version> </dependency>
วิธีดาวน์โหลดรุ่น
หน้าการเผยแพร่มีอาร์ติแฟกต์ที่แตกต่างกันสำหรับการเผยแพร่ไลบรารีแต่ละรายการ รวมถึงไฟล์ Jar
โคลนที่เก็บ:
ใช้วิธีนี้หากคุณต้องการเปลี่ยนแปลงหรือมีส่วนร่วมกับไลบรารีนี้ เช่น ส่งคำขอพุล หรือหากต้องการลองใช้ตัวอย่าง เมื่อโคลนที่เก็บ ระบบจะดาวน์โหลดไฟล์ทั้งหมดในที่เก็บนี้
- เรียกใช้
git clone https://github.com/google/java-photoslibrary.git
ที่พร้อมท์คำสั่ง - คุณจะได้รับไดเรกทอรี
java-photoslibrary
ไปที่การดำเนินการดังกล่าวโดยเรียกใช้cd java-photoslibrary
- เปิดไฟล์
build.gradle
ใน IDE หรือเรียกใช้./gradlew assemble
ที่ Command Prompt เพื่อสร้างโปรเจ็กต์ ดู./gradlew tasks
เพื่อดูงานที่มีอยู่
- เรียกใช้
ตั้งค่าข้อมูลเข้าสู่ระบบ OAuth2 สำหรับ Java
ไลบรารีของไคลเอ็นต์นี้ใช้งานได้กับไลบรารีการตรวจสอบสิทธิ์ของ Google สำหรับ 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 ให้ลองใช้อีก