ใช้ OAuth

Roads Selection API ใช้ Roads Selection API เป็นคอมโพเนนต์หลักที่ให้ข้อมูลถนนแก่ BigQuery และ Pub/Sub

Roads Selection API รองรับการใช้ OAuth 2.0 สำหรับการตรวจสอบสิทธิ์ Google รองรับสถานการณ์ OAuth 2.0 ทั่วไป เช่น สถานการณ์สำหรับเว็บเซิร์ฟเวอร์

เอกสารนี้อธิบายวิธีส่งโทเค็น OAuth ไปยังการเรียก API ของ Roads Selection ในสภาพแวดล้อมการพัฒนา ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้ OAuth ในสภาพแวดล้อมเวอร์ชันที่ใช้งานจริงได้ที่หัวข้อการตรวจสอบสิทธิ์ที่ Google

ก่อนเริ่มต้น

ก่อนเริ่มใช้ Roads Selection API คุณต้องมีโปรเจ็กต์ที่มีบัญชีสำหรับการเรียกเก็บเงินและเปิดใช้ Roads Selection API ดูข้อมูลเพิ่มเติมได้ที่ตั้งค่าใน Cloud Console

เกี่ยวกับ OAuth

คุณสร้างและจัดการโทเค็นเพื่อการเข้าถึงด้วย OAuth ได้หลายวิธีโดยขึ้นอยู่กับสภาพแวดล้อมการติดตั้งใช้งาน

ตัวอย่างเช่น ระบบ Google OAuth 2.0 รองรับการโต้ตอบระหว่างเซิร์ฟเวอร์กับเซิร์ฟเวอร์ เช่น การโต้ตอบระหว่างแอปพลิเคชันของคุณกับบริการของ Google สำหรับสถานการณ์นี้ คุณต้องมีบัญชีบริการ ซึ่งเป็นบัญชีที่เป็นของแอปพลิเคชันคุณ ไม่ใช่ของผู้ใช้แต่ละราย แอปพลิเคชันจะเรียกใช้ Google APIs ในนามของบัญชีบริการเนื่องจากผู้ใช้ไม่ได้เกี่ยวข้องโดยตรง ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีการตรวจสอบสิทธิ์ได้ที่หัวข้อการตรวจสอบสิทธิ์ที่ Google

หรือจะใช้ Roads Selection API เป็นส่วนหนึ่งของแอปบนอุปกรณ์เคลื่อนที่ Android หรือ iOS ก็ได้ ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้ OAuth กับ Roads Selection API รวมถึงข้อมูลเกี่ยวกับการจัดการโทเค็นเพื่อการเข้าถึงสำหรับสภาพแวดล้อมการติดตั้งใช้งานต่างๆ ได้ที่หัวข้อการใช้ OAuth 2.0 เพื่อเข้าถึง Google APIs

เกี่ยวกับขอบเขต OAuth

หากต้องการใช้ OAuth กับ Roads Selection API โทเค็น OAuth ต้องมีขอบเขต https://www.googleapis.com/auth/cloud-platform

ตัวอย่าง: ลองเรียกใช้ REST API ในสภาพแวดล้อมการพัฒนาซอฟต์แวร์ในเครื่อง

หากต้องการลองใช้ Roads Selection API โดยใช้โทเค็น OAuth แต่ไม่มีสภาพแวดล้อมที่ตั้งค่าไว้เพื่อสร้างโทเค็น ให้ทำตามขั้นตอนในส่วนนี้เพื่อส่งคำขอ

ตัวอย่างนี้อธิบายวิธีใช้โทเค็น OAuth ที่ได้จากข้อมูลรับรองเริ่มต้นของแอปพลิเคชัน (ADC) เพื่อทำการเรียก ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้ ADC เพื่อเรียกใช้ Google API ด้วยไลบรารีของไคลเอ็นต์ได้ที่หัวข้อตรวจสอบสิทธิ์โดยใช้ไลบรารีของไคลเอ็นต์

ข้อกำหนดเบื้องต้น

ก่อนที่จะส่งคำขอ REST โดยใช้ ADC ให้ใช้ Google Cloud CLI เพื่อระบุข้อมูลเข้าสู่ระบบให้กับ ADC โดยทำดังนี้

  1. หากยังไม่ได้สร้างโปรเจ็กต์และเปิดใช้การเรียกเก็บเงิน ให้ทำตามขั้นตอนในหัวข้อตั้งค่าใน Cloud Console
  2. ติดตั้งและเริ่มต้น gcloud CLI
  3. หากต้องการสร้างไฟล์ข้อมูลเข้าสู่ระบบ ให้เรียกใช้คำสั่ง gcloud ในเครื่องของคุณ โดยทำดังนี้

    gcloud auth application-default login
  4. ลงชื่อเข้าใช้เมื่อได้รับข้อความแจ้ง หลังจากลงชื่อเข้าใช้ ระบบจะจัดเก็บข้อมูลเข้าสู่ระบบไว้ในไฟล์ข้อมูลเข้าสู่ระบบในเครื่องที่ ADC ใช้

ดูข้อมูลเพิ่มเติมได้ที่ส่วนสภาพแวดล้อมในการพัฒนาซอฟต์แวร์ในเครื่องของเอกสารประกอบระบุข้อมูลเข้าสู่ระบบสำหรับข้อมูลรับรองเริ่มต้นของแอปพลิเคชัน

ส่งคำขอ REST

ในตัวอย่างนี้ คุณส่งส่วนหัวของคำขอ 2 รายการดังนี้

  • ส่งโทเค็น OAuth ในส่วนหัว Authorization โดยใช้คำสั่งต่อไปนี้เพื่อสร้างโทเค็น

    gcloud auth application-default print-access-token

    โทเค็นที่แสดงผลมีขอบเขตเป็น https://www.googleapis.com/auth/cloud-platform

  • ส่งรหัสหรือชื่อโปรเจ็กต์ Google Cloud ที่เปิดใช้การเรียกเก็บเงินในส่วนหัว X-Goog-User-Project ดูข้อมูลเพิ่มเติมได้ที่ตั้งค่าใน Cloud Console

เรียกใช้ Roads Selection API โดยใช้โทเค็น OAuth ดังนี้

curl -X GET \
-H 'X-Goog-User-Project: PROJECT_NUMBER' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
https://roads.googleapis.com/selection/v1/projects/PROJECT_NUMBER/selectedRoutes/SELECTED_ROUTE_ID

การแก้ปัญหา

หากคำขอแสดงข้อความแสดงข้อผิดพลาดเกี่ยวกับข้อมูลเข้าสู่ระบบของผู้ใช้ปลายทางที่ API นี้ไม่รองรับ โปรดดูหัวข้อข้อมูลเข้าสู่ระบบของผู้ใช้ไม่ทำงาน