ส่วนนี้ประกอบด้วยวิธีการสำหรับ Google Play Developer API โดยเฉพาะ ดูรายละเอียดเพิ่มเติมได้ในเอกสารประกอบ OAuth2 ฉบับเต็ม
การกำหนดค่าเริ่มต้น
การเข้าถึง Google Play Android Developer API จะได้รับการตรวจสอบสิทธิ์โดยใช้ขั้นตอนเว็บเซิร์ฟเวอร์ OAuth 2.0 ก่อนที่คุณจะใช้ API ได้ คุณจะต้องตั้งค่าโปรเจ็กต์คอนโซล API สร้างรหัสไคลเอ็นต์ และสร้างโทเค็นการรีเฟรช
การสร้างโครงการคอนโซล API
- ไปที่คอนโซล API และลงชื่อเข้าสู่ระบบด้วยบัญชี Google Play Console
- เลือกสร้างโปรเจ็กต์
- ไปที่บริการในแผงการนำทางด้านซ้ายมือ
- เปิด Google Play Android Developer API
- ยอมรับข้อกำหนดในการให้บริการ
- ไปที่การเข้าถึง API ในแผงการนำทางด้านซ้ายมือ
- เลือกสร้างรหัสไคลเอ็นต์ OAuth 2.0
- ในหน้าแรก คุณจะต้องกรอกชื่อผลิตภัณฑ์ แต่ไม่จำเป็นต้องมีโลโก้ โปรดทราบว่าผู้ใช้ปลายทางจะไม่เห็นชื่อผลิตภัณฑ์
- ในหน้าที่ 2 ให้เลือกเว็บแอปพลิเคชันและตั้งค่า URI การเปลี่ยนเส้นทางและต้นทาง JavaScript การตั้งค่าทั้งสองนี้สามารถเปลี่ยนแปลงได้ในภายหลัง
- เลือกสร้างรหัสไคลเอ็นต์
การสร้างโทเค็นการรีเฟรช
-
ขณะเข้าสู่ระบบด้วยบัญชี Google Play Console ให้ไปที่ URI ต่อไปนี้
https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/androidpublisher&response_type=code&access_type=offline&redirect_uri=...&client_id=...
- เลือกอนุญาตให้เข้าถึงเมื่อมีข้อความแจ้ง
-
ระบบจะเปลี่ยนเส้นทางเบราว์เซอร์ไปยัง URI การเปลี่ยนเส้นทางที่มีพารามิเตอร์
code
ซึ่งมีลักษณะคล้ายกับ4/eWdxD7b-YSQ5CNNb-c2iI83KQx19.wp6198ti5Zc7dJ3UXOl0T3aRLxQmbwI
-
แลกเปลี่ยนโค้ดนี้เป็นคู่โทเค็นเพื่อการเข้าถึงและรีเฟรชคู่โทเค็นโดยส่งคำขอ POST ไปยัง
https://accounts.google.com/o/oauth2/token
พร้อมด้วยการตั้งค่าช่องต่อไปนี้grant_type=authorization_code code=<the code from the previous step> client_id=<the client ID token created in the APIs Console> client_secret=<the client secret corresponding to the client ID> redirect_uri=<the URI registered with the client ID>
การตอบกลับที่สำเร็จจะมีโทเค็นของคุณในรูปแบบ JSON ดังนี้{ "access_token" : "ya29.ZStBkRnGyZ2mUYOLgls7QVBxOg82XhBCFo8UIT5gM", "token_type" : "Bearer", "expires_in" : 3600, "refresh_token" : "1/zaaHNytlC3SEBX7F2cfrHcqJEa3KoAHYeXES6nmho" }
การเข้าถึง API
เมื่อคุณสร้างข้อมูลเข้าสู่ระบบไคลเอ็นต์และโทเค็นการรีเฟรชแล้ว เซิร์ฟเวอร์ของคุณจะเข้าถึง API ได้โดยไม่ต้องมีการเข้าสู่ระบบหรือการดำเนินการโดยเจ้าหน้าที่
การใช้โทเค็นเพื่อการเข้าถึง
เซิร์ฟเวอร์สามารถเรียกใช้ API ได้โดยส่งโทเค็นเพื่อการเข้าถึงในส่วนหัว Authorization
ของคำขอ ดังนี้
Authorization: Bearer oauth2-token
การใช้โทเค็นการรีเฟรช
โทเค็นเพื่อการเข้าถึงแต่ละรายการจะใช้ได้เพียงระยะเวลาสั้นๆ เท่านั้น เมื่อโทเค็นเพื่อการเข้าถึงปัจจุบันหมดอายุ เซิร์ฟเวอร์จะต้องใช้โทเค็นการรีเฟรชเพื่อรับโทเค็นใหม่ หากต้องการทำแบบนี้ ให้ส่งคำขอ POST ไปยัง https://accounts.google.com/o/oauth2/token
พร้อมตั้งค่าช่องต่อไปนี้
grant_type=refresh_token client_id=<the client ID token created in the APIs Console> client_secret=<the client secret corresponding to the client ID> refresh_token=<the refresh token from the previous step>
การตอบกลับที่สำเร็จจะมีโทเค็นเพื่อการเข้าถึงอื่นดังนี้
{ "access_token" : "ya29.AHES3ZQ_MbZCwac9TBWIbjW5ilJkXvLTeSl530Na2", "token_type" : "Bearer", "expires_in" : 3600, }
ดังนั้นโทเค็นการรีเฟรชช่วยให้เว็บเซิร์ฟเวอร์เข้าถึง API ได้อย่างต่อเนื่องโดยไม่จำเป็นต้องลงชื่อเข้าใช้บัญชี Google ที่ใช้งานอยู่