簡介
Places API (舊版) 支援文字搜尋 (舊版)。如果您熟悉 Text Search (舊版),Text Search (新版) 則有以下變更:
- Text Search (New) 使用 HTTP POST 要求。在要求主體或標頭中傳遞參數,做為 HTTP POST 要求的一部分。相較之下,使用 Text Search (舊版) 時,您會透過 HTTP GET 要求傳遞網址參數。
- 必須遮蓋欄位。您必須指定要在回應中傳回的欄位。系統不會預設傳回任何欄位。如果省略這份清單,方法會傳回錯誤。詳情請參閱 FieldMask。
- Text Search (新版) 支援 API 金鑰和 OAuth 權杖做為驗證機制。
- 在「文字搜尋 (新版)」中,僅支援 JSON 做為回應格式。
使用「文字搜尋 (舊版)」時,您可以在查詢字串中指定經緯度座標。例如:
query=37.4239,-122.0925
。 文字搜尋 (新版) 不支援該選項。使用反向地理編碼依座標搜尋並傳回地址,或使用Nearby Search (新版) 尋找特定位置周圍的地點。
- Text Search (New) 的 JSON 回應格式已從舊版 API 的格式變更。詳情請參閱「遷移 Places API 回應」。
下表列出 Text Search (舊版) 中已重新命名或修改的參數,以及 Text Search (新版) 不再支援的參數。
目前參數 | 新增參數 | 附註 |
---|---|---|
evOptions |
新參數。 | |
language |
languageCode |
|
location |
locationBias |
|
maxprice/minprice |
priceLevels |
|
opennow |
openNow |
|
pagetoken |
pageToken |
|
query |
textQuery |
所有要求都必須包含這項屬性。 |
radius |
locationBias |
定義 locationBias 時,請指定半徑。 |
region |
regionCode |
|
type |
includedType |
只能採用單一值。 |
strictTypeFiltering |
新參數。 |
要求範例
下列範例 GET 要求使用「文字搜尋 (舊版)」。在本範例中,您要求 JSON 回應包含「澳洲雪梨的辣味素食」相關資訊,並以網址參數形式傳遞所有參數:
curl -L -X GET \ 'https://maps.googleapis.com/maps/api/place/textsearch/json?query=Spicy%20Vegetarian%20Food%20in%20Sydney%20Australia&key=API_KEY
使用 Text Search (新版) 時,您會發出 POST 要求,並在 JSON 要求內文或標頭中傳遞所有參數,做為 POST 要求的一部分。這個範例也使用欄位遮罩,因此回應只會包含地點的顯示名稱和格式化地址:
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia" }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress' \ 'https://places.googleapis.com/v1/places:searchText'