Places API 支援現有的 Autocomplete 和 Query Autocomplete API。如果您熟悉這些 API,Autocomplete (新版) 會進行下列變更:
- Autocomplete (新版) 會使用 HTTP POST 要求。在要求主體或標頭中,將參數傳遞為 HTTP POST 要求的一部分。相較之下,您可以使用 HTTP GET 要求,透過現有的 API 傳遞網址參數。
- Autocomplete (新版) 支援 API 金鑰和 OAuth 符記做為驗證機制。
- 在「自動完成」(新功能) 中,系統只支援 JSON 做為回應格式。
下表列出現有 Autocomplete 和 Query Autocomplete API 中,已為 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 要求的一部分。
自動完成 (新版) 要求不需要使用欄位遮罩,但可用於篩選回應中的特定結果。例如,下列要求會使用欄位遮罩,因此回應只會包含建議的 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
如要進一步瞭解如何使用欄位遮罩,請參閱「地點詳細資料 (新版)」。