簡介
Places API 支援 Place Autocomplete (舊版) 和 Query Autocomplete (舊版) API。如果您熟悉這些 API,Autocomplete (新版) 會有下列異動:
- Autocomplete (新版) 使用 HTTP POST 要求。請在要求主體或標頭中傳遞參數,做為 HTTP POST 要求的一部分。相較之下,使用舊版 API 時,您必須透過 HTTP GET 要求傳遞網址參數。
- Autocomplete (新版) 支援 API 金鑰和 OAuth 權杖做為驗證機制。
- Autocomplete (New) 僅支援 JSON 回應格式。
下表列出 Place Autocomplete (舊版) 和 Query Autocomplete (舊版) 中,已針對 Autocomplete (新版) 重新命名或修改的參數,或是不再支援的參數。
| 目前參數 | 新增參數 | 附註 |
|---|---|---|
components |
includedRegionCodes |
|
language |
languageCode |
|
location |
locationBias |
|
ipbias |
如果同時省略 locationBias 和 locationRestriction,API 預設會使用 IP 偏向。 |
|
offset |
inputOffset |
|
radius |
locationBias 或 locationRestriction |
|
region |
regionCode |
|
stricbounds |
locationRestriction |
|
sessiontoken |
sessionToken |
|
types |
includedPrimaryTypes |
要求範例
下列 GET 要求範例使用 Place Autocomplete (舊版)。在這個範例中,您要求 JSON 回應,其中包含名為「Amoeba」且類型為 establishment 的地點資訊,並將所有參數做為網址參數傳遞:
curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=amoeba&types=establishment&location=37.76999%2C-122.44696&radius=500&key=YOUR_API_KEY'
使用 Autocomplete (新版) 時,您需要提出 POST 要求,並在 JSON 要求主體或標頭中傳遞所有參數,做為 POST 要求的一部分。
Autocomplete (New) 要求不一定要使用欄位遮罩,但可用來篩選回應中的特定結果。舉例來說,下列要求使用欄位遮罩,因此回應只會包含建議的 suggestions.placePrediction.text:
curl -X POST -d '{
"input": "Amoeba",
"locationBias": {
"circle": {
"center": {
"latitude": 37.76999,
"longitude": -122.44696
},
"radius": 500.0
}
}
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: suggestions.placePrediction.text' \
https://places.googleapis.com/v1/places:autocomplete
如要進一步瞭解如何使用欄位遮罩,請參閱「Place Details (New)」。