本文說明開始使用 Roads API 的步驟。
必要條件
本程序將引導您設定 Google Cloud 帳戶和已啟用計費功能的 Google Cloud 專案。 此外,您也應熟悉 Roads API 的計費方式。
- 查看用量帳單和費用,請前往 Roads API 用量與計費。
確認您有 Google Cloud 帳戶。
登入 Google Cloud 控制台確認您有已啟用計費功能的 Google Cloud 雲端專案。
前往「帳單」頁面- 選取專案,開啟「Billing」(帳單) 頁面。
在「帳單」頁面中:
- 如果所選專案已啟用計費功能,且您只有一個帳單帳戶,系統會開啟「Billing」(帳單) 頁面。
- 如果您有多個帳單帳戶,請選取「前往連結的帳單帳戶」,查看與專案相關聯的帳單帳戶詳細資料。
- 如果已有帳單帳戶,但尚未與專案建立關聯,系統會提示您將帳單帳戶連結至專案。
- 如果沒有帳單帳戶,或想建立新的帳單帳戶,請選取「Manage Billing Accounts」(管理帳單帳戶),建立新的帳單帳戶。詳情請參閱「建立新的自助式 Cloud Billing 帳戶」。
啟用 API
您必須先使用 Google Cloud 控制台或 gcloud 指令,在 Google Cloud 雲端專案中啟用 Roads API,才能使用這項服務。
啟用 API:
控制台
在 Google Cloud 控制台中開啟產品頁面:
啟用 Roads API點選「啟用」按鈕。
gcloud
gcloud services enable \ --project "PROJECT" \ "roads.googleapis.com"
進一步瞭解 Google Cloud SDK、Cloud SDK 安裝和下列指令:
取得要與 Roads API 搭配使用的 API 金鑰
Google 地圖平台產品會要求 API 呼叫必須包含 API 金鑰,以防未經授權使用。
API 金鑰是不重複的英數字串,可將 Cloud Billing 帳戶和 Google Cloud 專案,與應用程式向 Google Maps Platform API 或 SDK 提出的要求建立關聯。如要建立新金鑰,或將 API/SDK 新增至現有金鑰,請按照下列操作說明進行。
控制台
-
前往「Google Maps Platform」>「金鑰和憑證」頁面。
- 如果出現系統提示,請選取您的專案。
-
請執行下列任一步驟:
-
建立新金鑰:
- 依序按一下 [Create credentials] (建立憑證) > [API key] (API 金鑰)。
- 在「建立 API 金鑰」面板中,開啟「選取 API 限制」清單。
- 清除這組金鑰不需要的所有 API,並確認 Roads API 仍處於選取狀態。
- 按一下「建立」,面板會顯示新的 API 金鑰。
-
使用現有金鑰:
- 按一下金鑰名稱。
- 在「Select API restrictions」(選取 API 限制) 清單中,選取 「Roads API」。
- 按一下 [儲存]。
在這裡選取 API 並不會啟用該 API。請確認 API 程式庫頁面已啟用 Roads API。
-
- 如要日後查看金鑰字串,請前往「金鑰和憑證」頁面,然後按一下金鑰的「顯示金鑰」。
如果控制台與這些步驟不同,請參閱 Google Cloud 說明文件中的「建立 API 金鑰」和「新增 API 限制」。
gcloud
在下列指令中,將 PROJECT_ID 替換為您的專案 ID。
-
建立新金鑰:執行下列指令,並將 DISPLAY_NAME 替換為金鑰名稱。
gcloud services api-keys create \ --project="PROJECT_ID" \ --display-name="DISPLAY_NAME" \ --api-target=service=roads.googleapis.com
進一步瞭解 Google Cloud SDK、Cloud SDK 安裝和下列指令:
-
使用現有金鑰:執行下列指令,並將 KEY_ID 替換為金鑰 ID。
--append旗標會保留金鑰已允許的 API。如果沒有這項參數,指令會替換這些執行個體。gcloud services api-keys update KEY_ID \ --project="PROJECT_ID" \ --append \ --api-target=service=roads.googleapis.com
進一步瞭解 Google Cloud SDK、Cloud SDK 安裝和下列指令:
金鑰 ID 不是金鑰字串或顯示名稱。如要找出這個值,請執行
gcloud services api-keys list --project="PROJECT_ID"。ID 是name欄位的最後一部分:projects/PROJECT_NUMBER/locations/global/keys/KEY_ID。
如要查看金鑰字串,請執行 gcloud services api-keys get-key-string KEY_ID
--project="PROJECT_ID"。
提出 API 要求
提出 Roads API 要求,傳回 JSON 回應,將指定點貼齊道路幾何圖形。每個要求都必須包含 API 金鑰的英數字串,且包含 API 金鑰的要求必須使用 HTTPS。
按一下下方程式碼中的 API_KEY,插入金鑰的英數字串:
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' - 按一下程式碼範例中的複製圖示
,複製 curl指令。 - 在終端機視窗中貼上並執行指令。
回應是 JSON 物件,格式如下:
{ "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" } ] }
套用 API 金鑰限制
Google 強烈建議您設定限制,只允許將 API 金鑰用於需要金鑰的 API 和應用程式。限制 API 金鑰可避免不必要的請求使用 API 金鑰,有助提升應用程式的安全性。API 金鑰支援兩種限制:
- API 限制:指定可使用 API 金鑰呼叫的 SDK 和 API。建立金鑰時,控制台和 gcloud CLI 至少需要一項 API 限制。
- 應用程式限制:指定哪些網站、IP 位址或應用程式可以使用 API 金鑰。
如要進一步瞭解如何套用限制,請參閱「限制 API 金鑰」。
後續步驟
您已啟用 Roads API 並成功提出要求,請參閱「比對路徑」,進一步瞭解如何使用 API。