Thiết lập Navigation Connect

Nhà phát triển ở Khu vực kinh tế Châu Âu (EEA)

Tài liệu này mô tả các bước bạn cần thực hiện để bắt đầu sử dụng Navigation Connect.

Các sản phẩm của Google Maps Platform yêu cầu các lệnh gọi API phải có mã thông báo OAuth để ngăn chặn việc sử dụng trái phép.

Tạo mã thông báo OAuth

Navigation Connect hỗ trợ OAuth 2.0 để xác thực. Google hỗ trợ các trường hợp OAuth 2.0 phổ biến, chẳng hạn như các trường hợp dành cho máy chủ web.

Tài liệu này mô tả cách truyền mã thông báo OAuth đến một lệnh gọi Navigation Connect trong môi trường phát triển của bạn. Để biết thêm thông tin về cách sử dụng OAuth trong môi trường thực tế, hãy xem Các phương thức xác thực tại Google.

Bạn có thể gọi trực tiếp Google Maps API bằng cách gửi các yêu cầu API đến máy chủ hoặc bạn có thể sử dụng thư viện ứng dụng để đơn giản hoá mã của mình. Google Maps cung cấp các thư viện ứng dụng cho Go, Java, Node.js và Python. Để biết thêm thông tin, hãy xem Thư viện ứng dụng Navigation Connect.

Tổng quan về OAuth

Bạn có thể tạo và quản lý mã truy cập bằng OAuth theo nhiều cách, tuỳ thuộc vào môi trường triển khai của bạn.

Bạn có thể sử dụng OAuth 2.0 cho các hoạt động tương tác giữa máy chủ với máy chủ giữa ứng dụng của bạn và một dịch vụ của Google. Đối với trường hợp này, bạn sử dụng một tài khoản dịch vụ được liên kết với ứng dụng của bạn thay vì một người dùng cá nhân. Bạn có thể đưa ra yêu cầu API bằng tài khoản dịch vụ mà không cần liên quan trực tiếp đến người dùng. Để biết thêm thông tin về các phương thức xác thực, hãy xem bài viết Các phương thức xác thực tại Google.

Ngoài ra, bạn có thể tích hợp Navigation Connect vào một ứng dụng di động Android hoặc iOS. Để biết thêm thông tin về cách sử dụng OAuth và quản lý mã truy cập cho các môi trường triển khai khác nhau, hãy xem bài viết Sử dụng OAuth 2.0 để truy cập vào các API của Google.

Phạm vi OAuth

Để sử dụng OAuth với Navigation Connect, bạn phải chỉ định cho mã thông báo OAuth phạm vi sau:

https://www.googleapis.com/auth/cloud-platform

Ví dụ: Thử các lệnh gọi API REST trong môi trường phát triển cục bộ

Nếu bạn không có môi trường tạo mã thông báo và muốn thử Navigation Connect bằng mã thông báo OAuth, hãy sử dụng quy trình trong phần này.

Ví dụ này mô tả cách sử dụng mã thông báo OAuth do Thông tin xác thực mặc định của ứng dụng (ADC) cung cấp để thực hiện lệnh gọi. Để biết thêm thông tin về cách sử dụng ADC để gọi API của Google bằng thư viện ứng dụng, hãy xem phần Xác thực bằng thư viện ứng dụng.

Chỉ sử dụng quy trình REST sau đây cho mục đích phát triển hoặc kiểm thử, chứ không dùng cho mục đích sản xuất.

Điều kiện tiên quyết

Trước khi đưa ra yêu cầu REST bằng ADC, hãy sử dụng CLI gcloud để cung cấp thông tin đăng nhập cho ADC:

  1. Cài đặt và khởi động CLI gcloud. Để biết thêm thông tin, hãy xem phần Cài đặt gcloud CLI.

  2. Xác thực bằng CLI gcloud:

    gcloud auth application-default login
  3. Hoàn tất quy trình đăng nhập để lưu thông tin đăng nhập của bạn trong tệp thông tin đăng nhập cục bộ mà ADC sử dụng.

Để biết thêm thông tin, hãy xem bài viết Thiết lập ADC cho môi trường phát triển cục bộ.

Gửi yêu cầu REST

Trong ví dụ này, bạn sẽ truyền 2 tiêu đề yêu cầu:

  • Truyền mã thông báo OAuth trong tiêu đề Authorization bằng cách sử dụng lệnh sau để tạo mã thông báo:

    gcloud auth application-default print-access-token

    Mã thông báo được trả về có phạm vi là https://www.googleapis.com/auth/cloud-platform.

  • Truyền mã nhận dạng hoặc tên của dự án trên đám mây Google Cloud đã bật tính năng thanh toán trong tiêu đề X-Goog-User-Project.

Để gọi Navigation Connect bằng mã thông báo OAuth, hãy hoàn tất các bước sau:

  1. Trong mã mẫu sau, hãy thay thế phần giữ chỗ bằng các giá trị của bạn:

    • PROJECT_ID: mã dự án trên đám mây của bạn
    • ANDROID_APP_ID: tên gói Android của ứng dụng (nếu có)
    • IOS_APP_ID: mã nhận dạng gói iOS của ứng dụng (nếu có)
    #!/bin/bash
    trip_id="$(uuidgen)"
    access_token="$(gcloud auth application-default print-access-token)"
    curl -X POST "https://navigationconnect.googleapis.com/v1/projects/PROJECT_ID/trips?tripId=${trip_id}" \
    -H "Authorization: Bearer ${access_token}" \
    -H "Content-Type: application/json" \
    -d '{
    "androidAppId": "ANDROID_APP_ID",
    "iosAppId": "IOS_APP_ID",
    }'
  2. Để sao chép lệnh curl, hãy nhấp vào Sao chép trong đoạn mã mẫu.

  3. Dán lệnh vào cửa sổ dòng lệnh rồi chạy lệnh đó.

Phản hồi là một đối tượng JSON:

{
  "name": "projects/PROJECT_NUMBER/trips/TRIP_ID",
  "authToken": {
    "token": "BASE64_ENCODED_TRIP_TOKEN",
    "expireTime": "2026-03-06T11:09:47.476942Z"
  },
  "state": "NEW",
  "execution": {
    "traveledDistanceMeters": 0,
    "stopAddedInRoute": false
  },
  "createTime": "2026-03-05T23:09:50.768959Z",
  "updateTime": "2026-03-05T23:09:50.768959Z",
}

Phản hồi này bao gồm các giá trị sau:

  • PROJECT_NUMBER: giá trị nhận dạng số nguyên dài duy nhất cho dự án
  • TRIP_ID: mã nhận dạng chuyến đi UUIDv4 mà phụ trợ của bạn tạo
  • BASE64_ENCODED_TRIP_TOKEN: mã thông báo đã xác thực mà phương thức createTrip trả về để bắt đầu chế độ chỉ đường từng chặng có theo dõi trong Google Maps hoặc Waze

Khắc phục sự cố

Nếu yêu cầu của bạn trả về một thông báo lỗi cho biết API này không hỗ trợ thông tin đăng nhập của người dùng cuối, hãy xem phần Khắc phục sự cố khi thiết lập ADC.

Bước tiếp theo

Tiếp theo, hãy định cấu hình tài khoản dịch vụ cho Navigation Connect API để hỗ trợ hoạt động giao tiếp an toàn giữa máy chủ với máy chủ giữa cơ sở hạ tầng phụ trợ, Google Maps và Waze.

Thiết lập tài khoản dịch vụ