Skip to content

Google Map API怎麼申請?金鑰限制、計費與官網應用

Posted in :

jc-seo

申請 Google Map API 的流程是:在 Google Cloud 控制台建立專案、連結帳單帳戶、啟用要用的 Google 地圖平台 API,再建立 API 金鑰並設定限制。官網常見需求各有對應的 API:嵌入地圖用 Maps Embed API 或 Maps JavaScript API,地址轉座標用 Geocoding API,路線與距離用 Routes API,門市查詢則組合多支 API。計費採隨用隨付,依每個 SKU 的計費事件計算,各 SKU 每月有免費用量,Maps Embed API 的實際用量則不收費;可在控制台設定配額上限控制用量,價格與免費用量依官方當下公告。金鑰一定要限制可用的網站或伺服器與 API,避免被盜用。

官網需求對應的 google maps api

Google 地圖平台(Google Maps Platform)把功能拆成多個 API 與 SDK,先依需求挑選,才不會啟用一堆用不到的服務:

官網需求 對應的 API 說明
聯絡我們頁放一張地圖 Maps Embed API 用 iframe 嵌入地圖或地點,不必寫程式控制地圖
可互動的地圖、多個標記 Maps JavaScript API 在網頁中用程式載入地圖,自訂標記、資訊視窗與樣式
地址轉座標 Geocoding API 把地址轉成經緯度,也能從經緯度反查地址
距離與路線 Routes API 回傳兩地之間的路線,可提供含即時路況的行車、單車與大眾運輸路線
地點搜尋與輸入自動完成 Places API 依文字或附近位置搜尋地點、取得地點詳細資料,以及輸入時的自動完成

只需要位置圖的官網,Maps Embed API 就夠用;要讓訪客找附近門市或輸入地址時自動完成,才需要其他 API。API 的基本觀念可參考API 的意思與運作方式。

申請前的準備:專案、帳單帳戶與權限

官方說明,設定 Cloud 專案必須先設定帳單帳戶,並確認專案已啟用帳單。動手前先確認兩件事:

  • 由公司帳號建立:專案與帳單帳戶建在公司的 Google 帳戶下,網站廠商以專案成員身分加入,避免合作結束後無法管理金鑰與帳單。
  • 測試與正式分開:測試站與正式站使用不同的專案或至少不同的金鑰,方便分開觀察用量;帳單管理權限只開給少數負責人。

申請 google maps api key 的步驟

  1. 登入 Google Cloud 控制台,建立新專案或選取既有專案。
  2. 替專案連結帳單帳戶。
  3. 到 API 程式庫或 Google 地圖平台頁面,逐一啟用需要的 API,例如 Maps JavaScript API 與 Geocoding API。
  4. 到「Google 地圖平台」的「憑證」頁面,按「建立憑證」並選「API 金鑰」;每個專案至少要有一把金鑰。
  5. 替金鑰設定應用程式限制與 API 限制,再儲存;官方強烈建議正式環境的金鑰一定要限制。
  6. 前端金鑰放進載入地圖的程式,伺服器金鑰放在伺服器的環境設定。

Google Cloud 一般 API 金鑰的觀念、保管原則與外洩處理,可參考API Key 的申請步驟與保管;以下只說明地圖平台需要特別注意的限制方式。

金鑰限制:前端金鑰與伺服器金鑰分開

地圖的金鑰常常必須放在網頁裡,訪客打開原始碼就看得到,所以限制比保密更重要。官方的安全建議有兩層:

  • 應用程式限制:分成網站、IP 位址、Android 與 iOS 應用程式。在瀏覽器載入的 Maps JavaScript API 限制為自家網站的網址;官方說明伺服器端應用程式以 IP 位址限制保護較佳,從伺服器呼叫 Geocoding API 時就用這一種。
  • API 限制:指定這把金鑰只能呼叫哪些地圖平台 API,前端金鑰不要開放伺服器才用的 API。

官方建議每把金鑰只用一種應用程式限制,並替不同應用程式分開建立金鑰,一把出事時只需輪替或刪除那一把,所以前端與伺服器至少各用一把。網站換網域或加上測試站時,記得把新網址加進限制清單;刪除舊金鑰前先確認沒有用在正式環境。

google map api 費用:SKU 與免費用量

官方說明地圖平台採隨用隨付,每項產品依 SKU 追蹤用量,例如地圖載入、地址轉座標或地點詳細資料各有對應的 SKU。計費重點如下:

  • 依 SKU 計算:每個 SKU 以每千次計費事件標價,分屬 Essentials、Pro 與 Enterprise 等類別,單價依官方價目表為準;用量會彙總同一帳單帳戶下的所有專案。
  • 免費用量:每個 SKU 每月提供免費的計費事件,額度依類別而定,每月重新計算;Maps Embed API 的實際用量不收費。
  • 配額上限:官方說明配額可以限制專案的請求數量,避免意外費用;但設得太低也可能讓網站功能中斷。
  • 預算與快訊:可設定預算快訊在費用達到一定比例時通知,但官方說明設定預算不會自動限制用量或費用,要搭配配額。

估算 google map api 費用時,先列出每個頁面會呼叫哪些 SKU、每次瀏覽觸發幾次,再乘上預估瀏覽量。只需要位置圖的頁面改用 Maps Embed API,就能避開計費 SKU。

確認設定成功與常見錯誤

設定完成後,依序檢查:

  1. 用無痕視窗開啟正式網站,確認地圖正常顯示、沒有錯誤提示。
  2. 開啟瀏覽器的開發人員工具,查看主控台是否有地圖平台的錯誤訊息。
  3. 到控制台的 Google 地圖平台「指標」頁面,依 API 與憑證篩選,確認請求出現在正確的 API 與金鑰下;官方提醒配額頁面的即時用量不是帳單依據,費用以帳單資訊主頁為準。

地圖沒出現時,依主控台的錯誤訊息逐項對照:專案是否已啟用帳單、要用的 API 是否已啟用、網站網址是否在金鑰的限制清單內,以及金鑰的 API 限制是否包含這支 API。

門市查詢頁的做法與資料規劃

門市查詢是官網常見的進階應用,建議這樣拆解:

  • 門市資料由後台管理:名稱、地址、電話與營業時間存在網站資料庫,由行政人員更新。
  • 注意保存規定:官方說明地點 ID 可以無限期保存,其他結果的快取與保存則有限制,以服務條款為準,設計資料表前先確認。
  • 依距離排序:訪客同意分享位置或輸入地址後,計算與各門市的距離並排序;需要實際行車時間時,再呼叫 Routes API。
  • 遵守顯示規範:Geocoding API 的結果若顯示在地圖上,必須是 Google 地圖;不在地圖上顯示時要標示 Google Maps 歸屬。

常見問題

Google Map API 可以免費使用嗎?

各 SKU 每月有免費用量,Maps Embed API 的實際用量也不收費,但仍要先設定帳單帳戶與專案。免費用量與價格依官方當下公告,建議同時設定配額。

只是在聯絡頁放地圖,也要申請金鑰嗎?

用 Maps Embed API 嵌入時,專案仍要有 API 金鑰並限制在自家網站,實際用量不收費。需要多個標記或互動功能時,才改用 Maps JavaScript API。

google map api key免費申請嗎?

費用依 API 的計費事件計算,用量會算在金鑰所屬專案的帳單帳戶上。正因如此,金鑰外流可能讓別人用掉你的額度,一定要設定網站或 IP 限制與可用的 API。

地址轉座標的結果可以存在資料庫嗎?

官方說明地點 ID 可以無限期保存,其他結果的快取與保存則受服務條款限制。規劃門市資料表時,先請工程師對照現行條款再決定欄位。

網站換網域後地圖不見了,該怎麼辦?

先確認新網域已加入金鑰的網站限制清單;若清單仍只有舊網域,請求就會被拒絕。更新限制後,再用無痕視窗確認地圖是否正常。

本文由京采數位科技整理。我們自 2005 年起提供官網設計、系統開發與 Google SEO 服務,實際案例可見成果與案例。

想直接討論你自己的網站狀況,或需要一份初步的搜尋機會評估?

相關主題

下一步

建議先列出官網要放地圖的頁面與功能,例如聯絡頁地圖、門市查詢或地址自動完成,再確認 Google Cloud 專案與帳單帳戶由公司帳號管理。京采的網頁設計服務可以協助規劃門市資料後台、串接地圖平台 API、設定金鑰限制與配額上限;歡迎與我們聯繫討論。