搜索目的地

欧洲经济区 (EEA) 开发者

A Destination 是指用户打算到达或导航 前往的特定位置或地点。“Destination”还包括与该位置或地点相关的一系列信息,例如导航点、地标、入口和建筑轮廓。

借助 Geocoding API 的 SearchDestinations 方法,您可以根据不同的输入条件(例如地址、地点 ID 或 经纬度坐标)检索有关各种 目的地的详细信息。

搜索目的地请求

搜索目的地请求是向以下格式的网址发出的 HTTP POST 请求

https://geocode.googleapis.com/v4/geocode/destinations

在 JSON 请求正文或标头中传递所有参数,作为 POST 请求的一部分。例如:

curl -X POST -d '{
  "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations

您可以通过以下 3 种方式之一指定要搜索目的地的位置:

  • 地址
  • 地点 ID
  • 经纬度坐标

按地址搜索目的地

您可以将地址指定为非结构化字符串。地址地理编码不会解析经纬度坐标,也不会解析不代表地址的其他非结构化字符串。系统不支持使用此类字符串的请求,并且可能会导致错误响应或未指定的行为。以下是不受支持的查询示例:

查询类型 示例
经纬度坐标。请改用位置查询 "37.422131,-122.084801"
概念或限制条件过多,例如在单个查询中包含多个地点、道路或城市的名称 "Market Street San Francisco San Jose Airport"
Google 地图上未显示的邮政地址元素 "C/O John Smith 123 Main Street"
"P.O. Box 13 San Francisco"
商家、连锁店或类别的名称与这些实体不可用的位置相结合 "Tesco near Dallas, Texas"
具有多种解读的模糊查询 "Charger drop-off"
不再使用的历史名称 "Middlesex United Kingdom"
非地理空间元素或意图 "How many boats are in Ventura Harbor?"
非官方名称或虚名 "The Jenga"
"The Helter Skelter"
大型政治实体(城市、州、国家/地区) "New York City"
"California"
"USA"
没有具体地址的路线 "1st Ave., NYC, NY"
"I-95"
curl -X POST -d '{
  "addressQuery": {
    "addressQuery": "601 S Bernardo Ave, Sunnyvale, CA 94087, USA"
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations

或作为 postalAddress

curl -X POST -d '{
  "addressQuery": {
    "address": {
      "addressLines": ["601 S Bernardo Ave"],
      "locality": "Sunnyvale",
      "postalCode": "94087",
      "administrativeArea": "CA",
      "regionCode": "US"
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations

您通常会在处理 HTML 表单中捕获的地址组成部分时使用 postalAddress 格式。

按地点 ID 搜索目的地

您可以通过提供地点 ID来检索目的地:

curl -X POST -d '{
  "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations

支持的地点 ID

“搜索目的地”方法最适合用于表示特定可导航目的地的地点 ID。一般支持 establishmentpoint_of_interestpremisestreet_addresssubpremise 等类型的地点 ID 。系统不支持 不代表离散位置的地点 ID,例如从地址范围(例如“10-20 Main St”)推断出的地点 ID、没有具体编号的路线路段或 Plus Code。系统也不支持 面积过大的结果的地点 ID(例如“太平洋”)。

将 Places API 自动补全(新)与“搜索目的地”搭配使用

为确保兼容性,请使用 Places API 自动补全 (新)查找要与“搜索目的地”搭配使用的地点 ID。使用自动补全功能时,您应使用 参数按类型过滤 includedPrimaryTypes 结果。“搜索目的地”支持使用以下推荐过滤条件通过自动补全功能返回的地点 ID:

"includedPrimaryTypes": [ "establishment", "point_of_interest", "premise", "street_address", "subpremise" ]

此外,您不应 在自动补全请求中将 include_pure_service_area_businesses 标志设置为 true

按位置搜索目的地

您可以通过提供经纬度坐标来搜索目的地:

curl -X POST -d '{
  "locationQuery": {
    "location": {
      "latitude": 37.37348780,
      "longitude": -122.05678064
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations

使用 OAuth 发出请求

Geocoding API v4 支持使用 OAuth 2.0 进行身份验证。如需将 OAuth 与 Geocoding API 搭配使用,必须为 OAuth 令牌分配正确的范围。 Geocoding API 支持以下范围,以便与“目的地”方法搭配使用:

  • https://www.googleapis.com/auth/maps-platform.geocode \- 与所有 Geocoding API 方法搭配使用。

此外,您还可以将通用的 https://www.googleapis.com/auth/cloud-platform 范围用于所有 Geocoding API 方法。该范围在开发期间很有用,但在生产环境中则不然,因为这是一个通用范围,允许访问所有方法。

如需了解更多信息和示例,请参阅使用 OAuth

搜索目的地响应

“搜索目的地”响应提供了有关位置的丰富超本地化背景信息。

“搜索目的地”响应中的 PlaceView 对象(例如 primarycontainingPlaces 中的项和 landmarks)使用字段来指示地点类型:

  • types:一个字符串数组,用于指示地点的类型。
  • primaryType:一个字符串,用于指示地点的主要类型。

`types` 和 `primaryType` 的可能字符串值均来自 `表 A 和表 B` 在地点类型(新)页面上。

本部分介绍了关键响应字段。如需详细了解所有响应 字段,请参阅API 参考文档

primary

请求中查询标识的主要地点。

containingPlaces

主要目的地所属的较大实体(例如包含商店的购物中心)。

subDestinations

主要目的地内的更具体位置(例如建筑物中的公寓)。

entrances

entrances[] 数组中的对象具有以下字段:

  • location

    一个纬度/经度坐标对,用于定义地点的入口和出口位置。

  • entrance_tags[]

    一个入口标记数组,用于描述入口的特征。 支持以下值:

    • "PREFERRED"

    表示此入口可能提供对返回地点的实际访问权限。一个地点可以有多个首选入口。如果某个入口 没有此标记,则表示该入口实际上位于同一 建筑物内,但不一定提供对该地点的访问权限。

    例如,如果返回的地点是带状购物中心内的一家餐厅,则 "PREFERRED" 入口将是通往餐厅 本身的入口,而其他返回的入口将是建筑物的其他入口,例如通往带状购物中心内其他餐厅的入口。

    如果返回的地点是建筑物本身,则 "PREFERRED" 入口将 是通往建筑物 "主要" 部分的入口。例如,在 购物中心内,"PREFERRED"入口将是允许 访问主要门厅区域的入口,但如果某个入口仅提供对建筑物侧面商店的访问权限,则它不会是"PREFERRED" 入口。

  • streetViewThumbnailstreetViewAnnotation

    街景 Static API 的参数,可让您显示 这些位置的相关图像。详细了解这些 字段

structureType

此地点代表的结构类型。

  • POINT

    点位置。

  • SECTION

    建筑物的子部分。

  • BUILDING

    建筑物。

  • GROUNDS

    通常包含多栋建筑的大片区域,例如大学园区、公寓楼或购物中心。

Geocoding 响应中的 navigationPoints 字段包含一个点列表,这些点有助于导航到该地点。具体来说,在从该地点出发或到达该地点的道路网络上规划路线时,应将这些点用作起点或终点。

每个导航点都包含以下值:

  • navigationPointToken 是一个令牌,其中包含 navigationPoints 字段中的背景信息。您可以将此令牌发送到路线和 导航 API,以改善应用中的路线和河流体验。如需了解详情,请参阅 使用导航点 令牌规划路线
  • location 包含导航点的纬度和经度值。 此位置始终非常靠近道路网络,是导航到某个地点或从某个地点出发的理想停靠点或出发地。该点有意与道路中心线略有偏移,以便清楚地标记该地点所在的道路一侧。
  • travelModes 是导航点可访问的出行方式列表:
    • "DRIVE" 是与行车路线对应的出行方式。
    • "WALK" 是与步行路线对应的出行方式。
  • usages 是导航点支持的用途列表。用途可以是:
    • "DROPOFF"
    • "PICKUP"
    • "PARKING"

对于接送服务,请使用出行方式为 DRIVE 且用途为 PICKUPDROPOFF 的导航点。如果没有可用的上车点或下车点,请使用排名最高的驾车导航点。

arrivalSummary

依托 AI 技术的分析洞见,可帮助您顺利到达目的地。请参阅依托 AI 技术的 摘要

landmarks

附近值得注意的地点,可帮助用户了解目的地周围的环境。

parkingOptions

详细的停车信息。

实验性:重要提示
parkingOptions 功能处于实验阶段。使用 /v4alpha/ 渠道形成 HTTP 请求。详细了解发布 阶段 渠道

回答格式

SearchDestinations 会返回以下 JSON 格式的 SearchDestinationsResponse

{
  "destinations": [
    {
      "primary": {
        "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w",
        "displayName": {
          "text": "Arby's",
          "languageCode": "en"
        },
        "primaryType": "fast_food_restaurant",
        "types": [
          "fast_food_restaurant",
          "sandwich_shop",
          "deli",
          "meal_takeaway",
          "food_delivery",
          "american_restaurant",
          "restaurant",
          "food_store",
          "store",
          "food",
          "point_of_interest",
          "establishment"
        ],
        "formattedAddress": "Arby's, 601 S Bernardo Ave, Sunnyvale, CA 94087, USA",
        "postalAddress": {
          "regionCode": "US",
          "languageCode": "en",
          "postalCode": "94087",
          "administrativeArea": "CA",
          "locality": "Sunnyvale",
          "addressLines": [
            "601 S Bernardo Ave"
          ]
        },
        "structureType": "BUILDING",
        "location": {
          "latitude": 37.3734545,
          "longitude": -122.05693269999998
        },
        "displayPolygon": {
          "type": "Polygon",
          "coordinates": [
            [
              [
                -122.056930138027,
                37.3735253692531
              ],
              [
                -122.056960139391,
                37.3735372663597
              ],
              [
                -122.056994129366,
                37.3734828786847
              ],
              [
                -122.056969677395,
                37.3734731161089
              ],
              [
                -122.057061762447,
                37.3733261309656
              ],
              [
                -122.056979388817,
                37.3732935577128
              ],
              [
                -122.056798860285,
                37.3735818838642
              ],
              [
                -122.056875858081,
                37.3736121235316
              ],
              [
                -122.056930138027,
                37.3735253692531
              ]
            ]
          ]
        }
      },
      "containingPlaces": [
        {
          "place": "places/ChIJYfdAFum2j4ARIcL2tjME3Sw",
          "displayName": {
            "text": "Cherry Chase Shopping Center",
            "languageCode": "en"
          },
          "primaryType": "shopping_mall",
          "types": [
            "shopping_mall",
            "point_of_interest",
            "establishment"
          ],
          "formattedAddress": "Cherry Chase Shopping Center, 663 S Bernardo Ave, Sunnyvale, CA 94087, USA",
          "postalAddress": {
            "regionCode": "US",
            "languageCode": "en",
            "postalCode": "94087-1020",
            "administrativeArea": "CA",
            "locality": "Sunnyvale",
            "addressLines": [
              "663 S Bernardo Ave"
            ]
          },
          "structureType": "GROUNDS",
          "location": {
            "latitude": 37.3731231,
            "longitude": -122.0578211
          },
          "displayPolygon": {
            "type": "Polygon",
            "coordinates": [
              [
                [
                  -122.057112227103,
                  37.3714618008523
                ],
                [
                  -122.057076849821,
                  37.3715743611411
                ],
                [
                  -122.056963607756,
                  37.3719081793948
                ],
                [
                  -122.056865279559,
                  37.3722026053835
                ],
                [
                  -122.056687872374,
                  37.3727258358476
                ],
                [
                  -122.056580005889,
                  37.3730511370747
                ],
                [
                  -122.056498845827,
                  37.3732994782583
                ],
                [
                  -122.056338259713,
                  37.3737878663325
                ],
                [
                  -122.056618678291,
                  37.373887693582
                ],
                [
                  -122.056912102521,
                  37.3740010327191
                ],
                [
                  -122.057532418159,
                  37.3742476426462
                ],
                [
                  -122.057673926626,
                  37.3742441740031
                ],
                [
                  -122.057735663106,
                  37.3742328516943
                ],
                [
                  -122.057766531332,
                  37.3742220604378
                ],
                [
                  -122.057797572967,
                  37.37420520725
                ],
                [
                  -122.057828267759,
                  37.3741852342085
                ],
                [
                  -122.058060299297,
                  37.3740060842535
                ],
                [
                  -122.058199726081,
                  37.3737861673422
                ],
                [
                  -122.05836707267,
                  37.373524542556
                ],
                [
                  -122.058569622393,
                  37.3732018598683
                ],
                [
                  -122.0587638478,
                  37.3728890198039
                ],
                [
                  -122.058934661823,
                  37.3726036257774
                ],
                [
                  -122.059164956851,
                  37.3722498383629
                ],
                [
                  -122.058997784906,
                  37.3721804442035
                ],
                [
                  -122.057936479838,
                  37.3717605636234
                ],
                [
                  -122.057495827092,
                  37.3715860151634
                ],
                [
                  -122.057112227103,
                  37.3714618008523
                ]
              ]
            ]
          }
        }
      ],
      "landmarks": [
        {
          "place": {
            "place": "places/ChIJXXTe7Oi2j4ARoMTA-D6Hjpg",
            "displayName": {
              "text": "Chase Bank",
              "languageCode": "en"
            },
            "primaryType": "bank",
            "types": [
              "bank",
              "atm",
              "finance",
              "point_of_interest",
              "establishment"
            ],
            "formattedAddress": "Chase Bank, 1234 W El Camino Real, Sunnyvale, CA 94087, USA",
            "postalAddress": {
              "regionCode": "US",
              "languageCode": "en",
              "postalCode": "94087",
              "administrativeArea": "CA",
              "locality": "Sunnyvale",
              "addressLines": [
                "1234 W El Camino Real"
              ]
            },
            "structureType": "POINT",
            "location": {
              "latitude": 37.373579,
              "longitude": -122.05752700000001
            }
          },
          "relationalDescription": {
            "text": "Near Chase Bank",
            "languageCode": "en"
          },
          "tags": [
            "ARRIVAL",
            "ADDRESS"
          ],
          "straightLineDistanceMeters": 61.182193756103516,
          "travelDistanceMeters": 63.075645446777344
        },
        {
          "place": {
            "place": "places/ChIJteQ0Fum2j4ARGi3tqK4Zm14",
            "displayName": {
              "text": "Safeway",
              "languageCode": "en"
            },
            "primaryType": "grocery_store",
            "types": [
              "grocery_store",
              "butcher_shop",
              "florist",
              "deli",
              "supermarket",
              "bakery",
              "food_delivery",
              "market",
              "manufacturer",
              "food_store",
              "store",
              "food",
              "service",
              "point_of_interest",
              "establishment"
            ],
            "formattedAddress": "Safeway, 639 S Bernardo Ave, Sunnyvale, CA 94087, USA",
            "postalAddress": {
              "regionCode": "US",
              "languageCode": "en",
              "postalCode": "94087",
              "administrativeArea": "CA",
              "locality": "Sunnyvale",
              "addressLines": [
                "639 S Bernardo Ave"
              ]
            },
            "structureType": "POINT",
            "location": {
              "latitude": 37.3727912,
              "longitude": -122.0581172
            }
          },
          "relationalDescription": {
            "text": "Around the corner from Safeway",
            "languageCode": "en"
          },
          "tags": [
            "ARRIVAL",
            "ADDRESS"
          ],
          "straightLineDistanceMeters": 158.65606689453125,
          "travelDistanceMeters": 131.1669921875
        },
        {
          "place": {
            "place": "places/ChIJu-PSYui2j4ARNiwOwBApGqk",
            "displayName": {
              "text": "Oil Changers",
              "languageCode": "en"
            },
            "types": [
              "car_repair",
              "service",
              "point_of_interest",
              "establishment"
            ],
            "formattedAddress": "Oil Changers, 1240 W El Camino Real, Sunnyvale, CA 94087, USA",
            "postalAddress": {
              "regionCode": "US",
              "languageCode": "en",
              "postalCode": "94087",
              "administrativeArea": "CA",
              "locality": "Sunnyvale",
              "addressLines": [
                "1240 W El Camino Real"
              ]
            },
            "structureType": "POINT",
            "location": {
              "latitude": 37.3743054,
              "longitude": -122.0584272
            }
          },
          "relationalDescription": {
            "text": "Down the road from Oil Changers",
            "languageCode": "en"
          },
          "tags": [
            "ARRIVAL"
          ],
          "straightLineDistanceMeters": 140.52459716796875,
          "travelDistanceMeters": 143.24220275878906
        },
        {
          "place": {
            "place": "places/ChIJKRbl5oG3j4ARwuvPGUmtCj0",
            "displayName": {
              "text": "Apni Mandi Farmers Market Sunnyvale",
              "languageCode": "en"
            },
            "primaryType": "grocery_store",
            "types": [
              "grocery_store",
              "cake_shop",
              "supermarket",
              "asian_grocery_store",
              "indian_restaurant",
              "meal_takeaway",
              "bakery",
              "manufacturer",
              "wholesaler",
              "restaurant",
              "food_store",
              "store",
              "food",
              "point_of_interest",
              "establishment"
            ],
            "formattedAddress": "Apni Mandi Farmers Market Sunnyvale, 1111 W El Camino Real, Sunnyvale, CA 94087, USA",
            "postalAddress": {
              "regionCode": "US",
              "languageCode": "en",
              "postalCode": "94087-1056",
              "administrativeArea": "CA",
              "locality": "Sunnyvale",
              "addressLines": [
                "1111 W El Camino Real"
              ]
            },
            "structureType": "POINT",
            "location": {
              "latitude": 37.3737199,
              "longitude": -122.0522958
            }
          },
          "relationalDescription": {
            "text": "Near Apni Mandi Farmers Market Sunnyvale",
            "languageCode": "en"
          },
          "tags": [
            "ADDRESS"
          ],
          "straightLineDistanceMeters": 410.37435913085938,
          "travelDistanceMeters": 479.49893188476562
        },
        {
          "place": {
            "place": "places/ChIJ8enMlui2j4AR2xXK5EHDhBs",
            "displayName": {
              "text": "Starbird Chicken",
              "languageCode": "en"
            },
            "primaryType": "chicken_restaurant",
            "types": [
              "chicken_restaurant",
              "fast_food_restaurant",
              "restaurant",
              "food",
              "point_of_interest",
              "establishment"
            ],
            "formattedAddress": "Starbird Chicken, 1241 W El Camino Real, Sunnyvale, CA 94087, USA",
            "postalAddress": {
              "regionCode": "US",
              "languageCode": "en",
              "postalCode": "94087-1028",
              "administrativeArea": "CA",
              "locality": "Sunnyvale",
              "addressLines": [
                "1241 W El Camino Real"
              ]
            },
            "structureType": "BUILDING",
            "location": {
              "latitude": 37.3746764,
              "longitude": -122.05708860000001
            },
            "displayPolygon": {
              "coordinates": [
                [
                  [
                    -122.057003840785,
                    37.3747648209809
                  ],
                  [
                    -122.057136852459,
                    37.3747919153144
                  ],
                  [
                    -122.057205005705,
                    37.3745815131859
                  ],
                  [
                    -122.057071994114,
                    37.3745544186944
                  ],
                  [
                    -122.057003840785,
                    37.3747648209809
                  ]
                ]
              ],
              "type": "Polygon"
            }
          },
          "relationalDescription": {
            "text": "Near Starbird Chicken",
            "languageCode": "en"
          },
          "tags": [
            "ADDRESS"
          ],
          "straightLineDistanceMeters": 87.348007202148438,
          "travelDistanceMeters": 214.08084106445312
        }
      ],
      "entrances": [
        {
          "location": {
            "latitude": 37.3735328,
            "longitude": -122.05694879999999
          },
          "tags": [
            "PREFERRED"
          ],
          "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w"
        }
      ],
      "navigationPoints": [
        {
          "navigationPointToken": "ChIJeMt61tqvQkARWT2716SDXsASEgljyy_n6LaPgBH9LoGUMNHjbBoSCWPLL-foto-AEf0ugZQw0eNsIhIJhf5y6ei2j4ARz7yBW5KAPI4",
          "location": {
            "latitude": 37.3738659,
            "longitude": -122.05693620000001
          },
          "travelModes": [
            "DRIVE",
            "WALK"
          ],
          "usages": [
            "PARKING"
          ]
        }
      ]
    }
  ]
}

必需参数

  • API 请求中必须包含以下 3 个参数之一,用于指定要搜索目的地的地址、地点或位置:
    • addressQuery - 要搜索的地址。
    • place - 要搜索的地点的地点 ID。
    • locationQuery - 要搜索的位置的经纬度坐标。
  • FieldMask

    通过创建 响应字段掩码,指定要在响应中返回的字段列表。使用网址参数 $fieldsfields,或者使用 HTTP 标头 X-Goog-FieldMask,将响应字段掩码传递给该方法。例如,以下请求将仅返回 入口、导航点和主要目的地的地点 ID。

      curl -X POST -d '{"place": "places/ChIJG3kh4hq6j4AR_XuFQnV0_t8"}' \
        -H "X-Goog-Api-Key: API_KEY" \
        -H "Content-Type: application/json" \
        -H "X-Goog-FieldMask: destinations.entrances,destinations.navigationPoints,destinations.primary.place" \
        https://geocode.googleapis.com/v4/geocode/destinations
      

    响应中没有返回字段的默认列表。如果您省略 字段掩码,该方法会返回错误。将字段掩码设置为 * 以返回所有字段。如需了解详情,请参阅 选择要返回的字段

可选参数

  • travelModes

    指定要返回的 navigationPoints 类型。 系统会过滤掉其他出行方式的导航点。如果未设置 travelModes,则可以返回所有出行方式的导航点 。

  • languageCode

    返回结果所用的语言。

    • 请参阅 支持的语言列表。Google 会经常更新 支持的语言,因此该列表可能并非详尽无遗。
    • 如果未提供 languageCode,API 默认使用 en。如果您指定了无效的语言代码,API 会返回 INVALID_ARGUMENT 错误。
    • API 会尽力提供用户和当地人都能看懂的街道地址。为实现此目标,API 会以当地语言返回街道 地址,并在必要时根据首选语言将街道地址音译为用户可读的 文字。所有其他 地址均以首选语言返回。地址组成部分均以同一种语言返回,该语言是从第一个组成部分中选择的。
    • 如果首选语言中没有名称,API 会使用最接近的匹配项。
    • 首选语言对 API 选择返回的结果集以及返回结果的顺序影响不大。地理编码器会根据语言以不同的方式解读缩写, 例如街道类型缩写,或者在一种语言中有效但在另一种语言中无效的同义词。
  • regionCode

    区域代码,采用 双字符 CLDR 代码值。没有默认值。大多数 CLDR 代码都与 ISO 3166-1 代码相同。

    对地址进行地理编码时(即正向地理编码),此参数可能会影响但不会 完全限制服务返回指定区域的结果。对位置或地点进行地理编码时(即反向地理编码地点地理编码),此参数可用于设置地址格式。在所有情况下,此参数都可能会根据适用法律影响结果。

  • placeFilter

    可让您过滤 locationQuery 搜索的结果,以满足您的要求,例如仅返回建筑物形式的目的地,或仅返回具有明确地址的目的地。

    按结构粒度过滤

    借助 structureType 过滤条件,您可以指定查询返回的结构类型:

    • 隔离建筑物:使用 "structureType": "BUILDING" 在地图上显示建筑 轮廓,或获取特定结构的详细信息。
    • 了解综合体:使用 "structureType": "GROUNDS" 确保 主要结果是整体场地。在查询大学校园或购物中心等 较大区域时,此功能非常有用。
    • 专注于单元/部分:使用 "structureType": "SECTION" 标识 建筑物内的部分。

    确保地址有用

    并非所有地点都有明确的街道级地址。借助 addressability 过滤条件 ,您可以控制结果中地址的质量:

    • 需要明确的主要地址:如需确保主要目的地结果 始终具有街道级地址或名称,请使用"addressability": "PRIMARY"。这对于需要明确地址的导航或显示用途非常有用。
    • 允许子目的地中的地址:如果主要地点 可能没有地址,但其中的单元有地址(例如建筑物中的 公寓),"addressability": "WEAK"可确保至少主要 地点或其某个子目的地有地址。
    • 任何结果:如果地址是否存在与您的用例无关,请使用 "addressability": "ANY"
    示例:过滤可寻址的建筑物
    curl -X POST -d '{
      "locationQuery": {
        "location": {
          "latitude": 37.37348780,
          "longitude": -122.05678064
        },
        "placeFilter": {
          "structureType": "BUILDING",
          "addressability": "PRIMARY"
        }
      },
      "languageCode": "en"
    }' \\
    -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \\
    -H "X-Goog-FieldMask: place" \\
    https://geocode.googleapis.com/v4/geocode/destinations