Thiết lập Roads API

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 Roads API.

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

Quy trình này hướng dẫn bạn cách thiết lập Tài khoản Google Cloud và dự án trên đám mây của Google Cloud đã bật tính năng thanh toán. Bạn cũng nên nắm rõ cách tính phí khi sử dụng Roads API.

  1. Xem lại thông tin thanh toán và chi phí sử dụng tại Roads API Mức sử dụng và thanh toán.
  2. Xác minh rằng bạn có Tài khoản Google Cloud.

    Đăng nhập vào Google Cloud Console
  3. Xác minh rằng bạn có một dự án trên đám mây của Google Cloud đã bật tính năng thanh toán.

    Chuyển đến trang Thanh toán
    1. Chọn dự án của bạn để mở trang Thanh toán.
    2. Trên trang Thanh toán:

      • Nếu bạn đã bật tính năng thanh toán cho dự án đã chọn và chỉ có một tài khoản thanh toán, thì trang Thanh toán sẽ mở ra.
      • Nếu bạn có nhiều tài khoản thanh toán, hãy chọn Chuyển đến tài khoản thanh toán được liên kết để xem thông tin chi tiết về tài khoản thanh toán liên kết với dự án.
      • Nếu tài khoản thanh toán tồn tại nhưng không được liên kết với dự án, thì bạn sẽ được nhắc liên kết tài khoản thanh toán với dự án.
      • Nếu không có tài khoản thanh toán nào hoặc bạn muốn tạo một tài khoản thanh toán mới, hãy chọn Quản lý tài khoản thanh toán để tạo một tài khoản thanh toán mới. Để biết thêm thông tin, hãy xem bài viết Tạo tài khoản thanh toán mới trên Cloud theo hình thức tự phục vụ.

Bật API

Trước khi có thể sử dụng Roads API, bạn phải dùng Google Cloud Console hoặc lệnh gcloud để bật API này trong dự án trên đám mây Google Cloud của mình.

Cách bật API:

Giao diện dòng lệnh

  1. Mở trang sản phẩm trong Google Cloud Console:

    Bật Roads API
  2. Nhấp vào nút Bật.

gcloud

gcloud services enable \
    --project "PROJECT" \
    "roads.googleapis.com"

Đọc thêm về Google Cloud SDK, cách cài đặt Cloud SDK và các lệnh sau:

Lấy khoá API để sử dụng với Roads API

Các sản phẩm của Google Maps Platform được bảo vệ khỏi hành vi sử dụng trái phép bằng cách yêu cầu các lệnh gọi API phải có khoá API.

Khoá API là một chuỗi chữ và số riêng biệt liên kết tài khoản Cloud Billing và dự án Google Cloud của bạn với yêu cầu mà ứng dụng của bạn gửi đến một API hoặc SDK của Google Maps Platform. Để tạo khoá mới hoặc thêm API hay SDK vào khoá hiện có, hãy làm theo các hướng dẫn sau.

Giao diện dòng lệnh

  1. Chuyển đến trang Google Maps Platform > Khoá và thông tin xác thực.

    Chuyển đến trang Khoá và thông tin xác thực

  2. Nếu thấy lời nhắc, hãy chọn dự án của bạn.
  3. Thực hiện một trong các thao tác sau:

    • Tạo khoá mới:

      1. Nhấp vào Tạo thông tin xác thực > Khoá API.
      2. Trong bảng điều khiển Create API key (Tạo khoá API), hãy mở danh sách Select API restrictions (Chọn các quy định hạn chế đối với API).
      3. Xoá mọi API mà khoá này không cần và đảm bảo Roads API vẫn được chọn.
      4. Nhấp vào Tạo. Bảng điều khiển sẽ hiển thị khoá API mới của bạn.
    • Sử dụng khoá hiện có:

      1. Nhấp vào tên của khoá.
      2. Trong danh sách Select API restrictions (Chọn các quy định hạn chế đối với API), hãy chọn Roads API.
      3. Nhấp vào Lưu.

    Việc chọn một API ở đây không giúp bật API đó. Đảm bảo rằng Roads API đã được bật trên trang Thư viện API.

  4. Để xem chuỗi khoá sau này, hãy chuyển đến trang Khoá và thông tin xác thực rồi nhấp vào Hiện khoá cho khoá đó.

Nếu bảng điều khiển có giao diện khác với các bước này, hãy xem phần Tạo khoá API và Thêm quy định hạn chế về API trong tài liệu của Google Cloud.

gcloud

Thay thế PROJECT_ID bằng mã dự án của bạn trong các lệnh sau.

  • Tạo khoá mới: Chạy lệnh sau và thay thế DISPLAY_NAME bằng tên cho khoá.

    gcloud services api-keys create \
        --project="PROJECT_ID" \
        --display-name="DISPLAY_NAME" \
        --api-target=service=roads.googleapis.com

    Đọc thêm về Google Cloud SDK, cách cài đặt Cloud SDK và các lệnh sau:

  • Sử dụng khoá hiện có: Chạy lệnh sau và thay thế KEY_ID bằng mã nhận dạng của khoá. Cờ --append giữ lại các API mà khoá đã cho phép. Nếu không có, lệnh sẽ thay thế các tệp đó.

    gcloud services api-keys update KEY_ID \
        --project="PROJECT_ID" \
        --append \
        --api-target=service=roads.googleapis.com

    Đọc thêm về Google Cloud SDK, cách cài đặt Cloud SDK và các lệnh sau:

    Mã khoá không phải là chuỗi khoá hoặc tên hiển thị. Để tìm tệp này, hãy chạy gcloud services api-keys list --project="PROJECT_ID". Mã nhận dạng là phần cuối cùng của trường name: projects/PROJECT_NUMBER/locations/global/keys/KEY_ID.

Để xem chuỗi khoá, hãy chạy gcloud services api-keys get-key-string KEY_ID --project="PROJECT_ID".

Tạo yêu cầu API

Tạo yêu cầu Roads API để trả về phản hồi JSON, trong đó các điểm đã chỉ định được điều chỉnh cho khớp với hình dạng đường. Bạn phải thêm chuỗi chữ và số của khoá API vào mọi yêu cầu và sử dụng HTTPS cho các yêu cầu có chứa khoá API.

  1. Nhấp vào API_KEY trong mã bên dưới để chèn chuỗi chữ và số của khoá:

    curl -L -X GET 'https://roads.googleapis.com/v1/snapToRoads?path=-35.27801%2C149.12958%7C-35.28032%2C149.12907%7C-35.28099%2C149.12929%7C-35.28144%2C149.12984%7C-35.28194%2C149.13003%7C-35.28282%2C149.12956%7C-35.28302%2C149.12881%7C-35.28473%2C149.12836&interpolate=true&key=YOUR_API_KEY'
    
  2. Nhấp vào biểu tượng sao chép trong mã mẫu, Chọn biểu tượng sao chép., để sao chép lệnh curl.
  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 ở dạng:

{
  "snappedPoints": [
    {
      "location": {
        "latitude": -35.278004899930188,
        "longitude": 149.129531998742
      },
      "originalIndex": 0,
      "placeId": "ChIJr_xl0GdNFmsRsUtUbW7qABM"
    },
    {
      "location": {
        "latitude": -35.2784195,
        "longitude": 149.12946589999999
      },
      "placeId": "ChIJr_xl0GdNFmsRsUtUbW7qABM"
    },
    ...
    {
      "location": {
        "latitude": -35.284727644851415,
        "longitude": 149.12833853807396
      },
      "originalIndex": 7,
      "placeId": "ChIJtWxAZmpNFmsRlbUCkc6VtnA"
    }
  ]
}

Áp dụng các quy tắc hạn chế đối với khoá API

Google đặc biệt khuyến khích bạn hạn chế khoá API bằng cách chỉ cho phép các API và ứng dụng cần thiết sử dụng khoá API. Việc hạn chế khoá API giúp tăng cường bảo mật cho ứng dụng của bạn bằng cách bảo vệ ứng dụng khỏi các yêu cầu không mong muốn. Khoá API hỗ trợ hai loại quy định hạn chế:

Để biết thêm thông tin về cách áp dụng các quy tắc hạn chế, hãy xem bài viết Hạn chế khoá API.

Bước tiếp theo

Giờ đây, bạn đã bật Roads API và gửi yêu cầu thành công, hãy xem phần Snap to Roads để tìm hiểu thêm về cách sử dụng API này.