PlacesService 类
google.maps.places.PlacesService 类
包含与搜索地点和检索地点详细信息相关的方法。
通过调用 const {PlacesService} = await google.maps.importLibrary("places") 进行访问。
请参阅 Maps JavaScript API 中的库。
| 构造函数 | |
|---|---|
| PlacesService | PlacesService(attrContainer)参数:   
 创建  PlacesService的新实例,该实例可在指定容器中呈现提供方信息。 | 
| 方法 | |
|---|---|
| findPlaceFromPhoneNumber | findPlaceFromPhoneNumber(request, callback)参数:   
 返回值:无 根据电话号码检索地点列表。在大多数情况下,结果列表中应该只有一个项,但如果请求不明确,则可能会返回多个结果。传递给回调的  PlaceResult是完整PlaceResult的子集。您的应用可以通过调用PlacesService.getDetails并传递所需地点的PlaceResult.place_id,获取每个地点的更详细的PlaceResult。 | 
| findPlaceFromQuery | findPlaceFromQuery(request, callback)参数:   
 返回值:无 根据查询字符串检索地点列表。在大多数情况下,结果列表中应该只有一个项,但如果请求不明确,则可能会返回多个结果。传递给回调的  PlaceResult是完整PlaceResult的子集。您的应用可以通过调用PlacesService.getDetails并传递所需地点的PlaceResult.place_id,获取每个地点的更详细的PlaceResult。 | 
| getDetails | getDetails(request, callback)参数:   
 返回值:无 检索由给定  placeId标识的地点详情。 | 
| nearbySearch | nearbySearch(request, callback)参数:   
 返回值:无 根据关键字或类型检索特定位置附近的地点列表。必须始终指定位置,方法是传递  LatLngBounds或location和radius参数。传递给回调的PlaceResult是完整PlaceResult的子集。您的应用可以通过发送地点详情请求来获取每个地点的更详细的PlaceResult,并传递所需地点的PlaceResult.place_id。PlaceSearchPagination对象可用于提取其他结果页面(如果这是最后一个结果页面或只有一个结果页面,则为 null)。 | 
| textSearch | textSearch(request, callback)参数:   
 返回值:无 根据查询字符串(例如“北京烤鸭”或“南京附近的鞋店”)检索地点列表。位置参数是可选的;指定位置后,结果只会偏向于附近的地点,而不会仅限于该区域内的地点。如果您想使用任意字符串搜索地点,并且不想将搜索结果限制在特定位置,请使用  textSearch。PlaceSearchPagination对象可用于提取其他结果页面(如果这是最后一个结果页面或只有一个结果页面,则为 null)。 | 
PlaceDetailsRequest 接口
google.maps.places.PlaceDetailsRequest
接口
要发送到 PlacesService 的地点详情查询。
| 属性 | |
|---|---|
| placeId | 类型:   string要为其请求详情的 Place 的 Place ID。 | 
| fields optional | 类型:   Array<string> optional要包含在详情响应中的字段,这些字段将产生费用。如果未指定任何字段或传入的是  ['ALL'],系统会返回所有可用字段并据此计费(不建议用于生产环境中的部署)。如需查看字段列表,请参阅PlaceResult。可以使用点路径指定嵌套字段(例如"geometry.location")。 | 
| language optional | 类型:   string optional一种语言标识符,用于指定应以哪种语言返回详细信息。请参阅支持的语言列表。 | 
| region optional | 类型:   string optional用户所在地区的地区代码。这可能会影响返回的照片,还可能会影响其他方面。地区代码接受 ccTLD(“顶级域名”)双字符值。多数 ccTLD 代码都与 ISO 3166-1 代码相同,但也有一些需要注意的例外情况。例如,英国的 ccTLD 为“uk”( .co.uk),而其 ISO 3166-1 代码为“gb”(从技术上讲,是指“大不列颠及北爱尔兰联合王国”这一实体)。 | 
| sessionToken optional | 类型:   AutocompleteSessionToken optional用于将详情请求与自动补全会话捆绑在一起的唯一引用。 | 
FindPlaceFromPhoneNumberRequest 接口
google.maps.places.FindPlaceFromPhoneNumberRequest
接口
要发送到 PlacesService.findPlaceFromPhoneNumber 的通过文本搜索查找地点的请求。
| 属性 | |
|---|---|
| fields | 类型:   Array<string>要包含在响应中的字段,这些字段会产生费用。如果传入的是  ['ALL'],系统会返回所有可用字段并据此计费(不建议用于生产环境中的部署)。如需查看字段列表,请参阅PlaceResult。可以使用点路径指定嵌套字段(例如"geometry.location")。 | 
| phoneNumber | 类型:   string要查找的场所的电话号码。格式必须为 E.164。 | 
| language optional | 类型:   string optional一种语言标识符,用于指定应尽可能以哪种语言返回名称和地址。请参阅支持的语言列表。 | 
| locationBias optional | 类型:   LocationBias optional搜索地点时使用的偏差。结果会偏向于(但不限于)给定的  LocationBias。 | 
FindPlaceFromQueryRequest 接口
google.maps.places.FindPlaceFromQueryRequest
接口
要发送到 PlacesService.findPlaceFromQuery 的通过文本搜索查找地点的请求。
| 属性 | |
|---|---|
| fields | 类型:   Array<string>要包含在响应中的字段,这些字段会产生费用。如果传入的是  ['ALL'],系统会返回所有可用字段并据此计费(不建议用于生产环境中的部署)。如需查看字段列表,请参阅PlaceResult。可以使用点路径指定嵌套字段(例如"geometry.location")。 | 
| query | 类型:   string请求的查询。例如,地点的名称或地址。 | 
| language optional | 类型:   string optional一种语言标识符,用于指定应尽可能以哪种语言返回名称和地址。请参阅支持的语言列表。 | 
| locationBias optional | 类型:   LocationBias optional搜索地点时使用的偏差。结果会偏向于(但不限于)给定的  LocationBias。 | 
PlaceSearchRequest 接口
google.maps.places.PlaceSearchRequest
接口
要发送到 PlacesService 的地点搜索查询。
| 属性 | |
|---|---|
| bounds optional | 类型:   LatLngBounds|LatLngBoundsLiteral optional要在其中搜索地点的边界。如果设置了  bounds,系统会忽略location和radius。 | 
| keyword optional | 类型:   string optional要与所有可用字段进行匹配的字词,包括但不限于名称、类型和地址,以及客户评价和其他第三方内容。 | 
| language optional | 类型:   string optional一种语言标识符,用于指定应尽可能以哪种语言返回名称和地址。请参阅支持的语言列表。 | 
| location optional | 类型:   LatLng|LatLngLiteral optional要在其周边搜索地点的位置。 | 
| maxPriceLevel optional | 类型:   number optional将结果限制为仅包含指定价位或更低价位的地点。有效值范围介于 0(最实惠)和 4(最昂贵)之间,包括 0 和 4。如果指定,则必须大于或等于  minPrice 。 | 
| minPriceLevel optional | 类型:   number optional将结果限制为仅包含指定价位或更高价位的地点。有效值范围介于 0(最实惠)和 4(最昂贵)之间,包括 0 和 4。如果指定了值,则必须小于或等于  maxPrice。 | 
|  | 类型:   string optional等同于  keyword。此字段中的值会与keyword字段中的值合并,作为同一搜索字符串的一部分进行传递。 | 
| openNow optional | 类型:   boolean optional将结果限制为仅包含当前营业的地点。 | 
| radius optional | 类型:   number optional搜索地点的范围,以米为单位,即与指定位置之间的距离。允许的最大值为 50,000。 | 
| rankBy optional | 类型:   RankBy optional默认值:  RankBy.PROMINENCE指定返回结果时要使用的排名方法。请注意,将  rankBy设置为DISTANCE时,您必须指定location,但不能指定radius或bounds。 | 
| type optional | 类型:   string optional搜索指定类型的地点。该类型会翻译为请求的目标位置的本地语言,并用作查询字符串。如果还提供了查询,则会将其与本地化的类型字符串串联起来。从响应中舍弃其他类型的结果。使用此字段可执行与语言和地区无关的分类搜索。如需查看有效类型,请点击此处。 | 
TextSearchRequest 接口
google.maps.places.TextSearchRequest
接口
要发送到 PlacesService 的文本搜索请求。
| 属性 | |
|---|---|
| bounds optional | 类型:   LatLngBounds|LatLngBoundsLiteral optional用于在搜索地点时对结果进行偏向处理的边界(可选)。如果设置了  bounds,系统会忽略location和radius。结果不会仅限于这些边界内的地点,但边界内的结果排名会更高。 | 
| language optional | 类型:   string optional一种语言标识符,用于指定应尽可能以哪种语言返回名称和地址。请参阅支持的语言列表。 | 
| location optional | 类型:   LatLng|LatLngLiteral optional用于在搜索地点时对结果进行偏向处理的区域的中心。 | 
| query optional | 类型:   string optional相应请求的查询字词。例如,地点名称(“埃菲尔铁塔”)、类别后跟位置名称(“纽约的披萨”)或地点名称后跟位置消歧器(“悉尼的星巴克”)。 | 
| radius optional | 类型:   number optional在搜索地点时用于调整结果的区域半径(以米为单位)。 | 
| region optional | 类型:   string optional用于使结果偏向于特定区域的地区代码。地区代码接受 ccTLD(“顶级域名”)双字符值。多数 ccTLD 代码都与 ISO 3166-1 代码相同,但也有一些需要注意的例外情况。例如,英国的 ccTLD 为“uk”( .co.uk),而其 ISO 3166-1 代码为“gb”(从技术上讲,是指“大不列颠及北爱尔兰联合王国”这一实体)。 | 
| type optional | 类型:   string optional搜索指定类型的地点。该类型会翻译为请求的目标位置的本地语言,并用作查询字符串。如果还提供了查询,则会将其与本地化的类型字符串串联起来。从响应中舍弃其他类型的结果。使用此字段可执行与语言和地区无关的分类搜索。如需查看有效类型,请点击此处。 | 
RankBy 常量
google.maps.places.RankBy 常量
PlaceSearchRequest 的排名选项。
通过调用 const {RankBy} = await google.maps.importLibrary("places") 进行访问。
请参阅 Maps JavaScript API 中的库。
| 常量 | |
|---|---|
| DISTANCE | 按与地点的距离对地点搜索结果进行排名。 | 
| PROMINENCE | 按地点结果的知名度对其进行排名。 | 
LocationBias typedef
google.maps.places.LocationBias
typedef
LocationBias 表示在搜索地点时使用的软边界或提示。结果可能来自指定区域以外的区域。如需使用当前用户的 IP 地址作为偏差,可以指定字符串 "IP_BIAS"。注意:如果使用 Circle,则必须定义中心和半径。
LatLng|LatLngLiteral|LatLngAltitude|LatLngAltitudeLiteral|LatLngBounds|LatLngBoundsLiteral|Circle|CircleLiteral|string
LocationRestriction typedef
google.maps.places.LocationRestriction
typedef
LocationRestriction 表示在搜索地点时要使用的严格边界。
PlacesServiceStatus 常量
google.maps.places.PlacesServiceStatus 常量
PlacesService 在完成搜索时返回的状态。您可以通过值或使用常量的名称来指定这些参数。例如 'OK' 或 google.maps.places.PlacesServiceStatus.OK。
通过调用 const {PlacesServiceStatus} = await google.maps.importLibrary("places") 进行访问。
请参阅 Maps JavaScript API 中的库。
| 常量 | |
|---|---|
| INVALID_REQUEST | 请求无效。 | 
| NOT_FOUND | 找不到引用的地点。 | 
| OK | 该响应包含有效的结果。 | 
| OVER_QUERY_LIMIT | 应用已超出其请求配额。 | 
| REQUEST_DENIED | 应用无权使用 PlacesService。 | 
| UNKNOWN_ERROR | 由于服务器错误,无法处理 PlacesService请求。如果您再试一次,该请求可能会成功。 | 
| ZERO_RESULTS | 该请求查询不到任何结果。 | 
PlaceSearchPagination 接口
google.maps.places.PlaceSearchPagination
接口
用于提取更多地点结果的对象。
| 属性 | |
|---|---|
| hasNextPage | 类型:   boolean表示是否还有其他结果。如果存在额外的结果页面,属性值为  true。 | 
| 方法 | |
|---|---|
| nextPage | nextPage()参数:无 返回值:   void获取下一页结果。使用提供给第一个搜索请求的同一回调函数。 | 
PlaceResult 接口
google.maps.places.PlaceResult
接口
定义有关地点的信息。
| 属性 | |
|---|---|
| address_components optional | 类型:   Array<GeocoderAddressComponent> optional相应地点的地址组成部分集合。仅适用于  PlacesService.getDetails。 | 
| adr_address optional | 类型:   string optional以 adr 微格式表示的 Place 的地址。仅适用于  PlacesService.getDetails。 | 
| aspects optional | 类型:   Array<PlaceAspectRating> optional根据 Google 和 Zagat 用户评价得出的此地点的评分方面。评分范围为 0 到 30。 | 
| business_status optional | 类型:   BusinessStatus optional一个标志,用于指明地点的营业状态(如果该地点为商家),表示该地点是正常营业还是暂停营业或永久停业。如果没有可用的数据,则搜索或详情响应中不会显示此标志。 | 
| formatted_address optional | 类型:   string optionalPlace 的完整地址。 | 
| formatted_phone_number optional | 类型:   string optional地点的电话号码,其格式遵循 号码的地区惯例。仅适用于  PlacesService.getDetails。 | 
| geometry optional | 类型:   PlaceGeometry optional地点的几何图形相关信息。 | 
| html_attributions optional | 类型:   Array<string> optional要针对此地点结果显示的提供方说明文本。无论请求了哪些  fields,系统始终会返回可用的html_attributions,并且必须显示这些html_attributions。 | 
| icon optional | 类型:   string optional指向可用于表示相应地点的类别的图片资源的网址。 | 
| icon_background_color optional | 类型:   string optional与地点的图标搭配使用的背景颜色。另请参阅  PlaceResult.icon_mask_base_uri。 | 
| icon_mask_base_uri optional | 类型:   string optional指向图标遮罩的截断网址。通过在末尾附加文件扩展名(即  .svg或.png)来访问不同的图标类型。 | 
| international_phone_number optional | 类型:   string optional地点的电话号码(采用国际电话号码格式)。国际格式包含国家/地区代码,并以加号符号 (+) 作为前缀。仅适用于  PlacesService.getDetails。 | 
| name optional | 类型:   string optional场所的名称。注意:如果是用户输入的地名,则为用户输入的原始文本。请谨慎使用此数据,因为恶意用户可能会尝试将其用作代码注入攻击的载体(请参阅  http://en.wikipedia.org/wiki/Code_injection)。 | 
| opening_hours optional | 类型:   PlaceOpeningHours optional定义营业地点的营业时间或闭店时间。 | 
|  | 类型:   boolean optional一个标志,用于指明相应地点是否已关闭(永久关闭或暂时关闭)。如果相应营业地点正在营业,或者没有可用的数据,则响应中不会包含此标志。 | 
| photos optional | 类型:   Array<PlacePhoto> optional此地点的照片。该集合最多包含 10 个  PlacePhoto对象。 | 
| place_id optional | 类型:   string optional地点的唯一标识符。 | 
| plus_code optional | 类型:   PlacePlusCode optional为地点定义开放位置代码或“Plus 代码”。 | 
| price_level optional | 类型:   number optional相应地点的价格水平,范围为 0 到 4。价格水平的解读如下: 
 | 
| rating optional | 类型:   number optional根据用户对相应地点的评价得出的评分,介于 1.0 到 5.0 之间。 | 
| reviews optional | 类型:   Array<PlaceReview> optional相应地点的评价列表。仅适用于  PlacesService.getDetails。 | 
| types optional | 类型:   Array<string> optional | 
| url optional | 类型:   string optional相应地点的官方 Google 页面的网址。这是由 Google 拥有的页面,其中包含有关该地点的实用信息。仅适用于  PlacesService.getDetails。 | 
| user_ratings_total optional | 类型:   number optional促成相应地点的  PlaceResult.rating的用户评分数量。 | 
|  | 类型:   number optional相应地点的当前时区与世界协调时间 (UTC) 的偏移量(以分钟为单位)。例如,澳大利亚悉尼在夏令时期间比世界协调时间 (UTC) 早 11 小时,因此  utc_offset将为660。对于晚于 UTC 的时区,偏移量为负值。例如,佛得角的utc_offset为-60。仅适用于PlacesService.getDetails。 | 
| utc_offset_minutes optional | 类型:   number optional相应地点的当前时区与世界协调时间 (UTC) 的偏移量(以分钟为单位)。例如,澳大利亚悉尼在夏令时期间比世界协调时间 (UTC) 早 11 小时,因此  utc_offset_minutes将为660。对于晚于 UTC 的时区,偏移量为负值。例如,佛得角的utc_offset_minutes为-60。仅适用于PlacesService.getDetails。 | 
| vicinity optional | 类型:   string optional地点的简化地址,包括街道名称、门牌号和市行政区,但不包括省/州、邮政编码或国家/地区。例如,Google 澳大利亚悉尼办事处的邻近度值为  "48 Pirrama Road, Pyrmont"。仅适用于PlacesService.getDetails。 | 
| website optional | 类型:   string optional此地点的权威网站,例如商家主页。仅适用于  PlacesService.getDetails。 | 
PlaceAspectRating 接口
google.maps.places.PlaceAspectRating
接口
定义有关用户评价过的地点的某个方面的信息。
| 属性 | |
|---|---|
| rating | 类型:   number相应方面的评分。对于单条评价,此值为介于 0 到 3 之间的整数。对于地点的汇总评分,这是一个介于 0 到 30 之间的整数。 | 
| type | 类型:   string切面类型。例如  "food"、"decor"、"service"或"overall"。 | 
BusinessStatus 常量
google.maps.places.BusinessStatus 常量
Place 的营业状态(如果该地点为商家),以 PlaceResult 形式返回(指示该地点是正常营业还是暂停营业或永久停业)。按值或常量名称(例如:'OPERATIONAL' 或 google.maps.places.BusinessStatus.OPERATIONAL)指定这些值。
通过调用 const {BusinessStatus} = await google.maps.importLibrary("places") 进行访问。
请参阅 Maps JavaScript API 中的库。
| 常量 | |
|---|---|
| CLOSED_PERMANENTLY | 商家已永久停业。 | 
| CLOSED_TEMPORARILY | 商家暂时停业。 | 
| OPERATIONAL | 商家正常营业。 | 
PlaceGeometry 接口
google.maps.places.PlaceGeometry
接口
定义有关地点的几何图形的信息。
| 属性 | |
|---|---|
| location optional | 类型:   LatLng optional地点的位置。 | 
| viewport optional | 类型:   LatLngBounds optional在地图上显示相应地点时的首选视口。如果不知道相应地点的首选视口,此属性将为  null。仅适用于PlacesService.getDetails。 | 
PlaceOpeningHours 接口
google.maps.places.PlaceOpeningHours
接口
定义有关地点的营业时间的信息。
| 属性 | |
|---|---|
|  | 类型:   boolean optional相应地点在当前时间是否营业。 | 
| periods optional | 类型:   Array<PlaceOpeningHoursPeriod> optional涵盖一周中每一天的营业时段,从星期日开始,按时间顺序排列。不营业的日期不包括在内。仅适用于  PlacesService.getDetails。 | 
| weekday_text optional | 类型:   Array<string> optional一个包含七个字符串的数组,用于以特定格式表示一周内每天的营业时间。地点服务会根据当前语言设置营业时间格式,并进行本地化。此数组中元素的顺序取决于语言。有些语言以星期一作为一周的开始,有些语言则以星期日作为开始。仅适用于  PlacesService.getDetails。其他调用可能会返回空数组。 | 
| 方法 | |
|---|---|
| isOpen | isOpen([date])参数:   
 返回值:   boolean|undefined检查相应地点目前(如果未传递日期)或在指定日期是否营业。如果相应地点没有  PlaceResult.utc_offset_minutes或PlaceOpeningHours.periods,则返回undefined(PlaceOpeningHours.periods仅通过PlacesService.getDetails提供)。此方法不会考虑特殊营业时间,例如节假日营业时间。 | 
PlaceOpeningHoursPeriod 接口
google.maps.places.PlaceOpeningHoursPeriod
接口
定义有关营业时间的地点结构化信息。注意:如果某个地点全天营业,响应中将缺少 close 部分。客户端可以通过以下方式表示全天营业:将 open 中的 day 设置为 0,将 time 设置为 "0000",并且不包含 close。
| 属性 | |
|---|---|
| open | 地点的营业时间。 | 
| close optional | 类型:   PlaceOpeningHoursTime optional场所的结束营业时间。 | 
PlaceOpeningHoursTime 接口
google.maps.places.PlaceOpeningHoursTime
接口
定义营业地点的营业时间或闭店时间。
| 属性 | |
|---|---|
| day | 类型:   number星期几,以 [ 0,6] 范围内的数字表示,从星期日开始。例如,2表示星期二。 | 
| hours | 类型:   number | 
| minutes | 类型:   number | 
| time | 类型:   string一天中的时间,采用 24 小时制“hhmm”格式。值范围为 [ "0000","2359"]。时间将按地点的时区报告。 | 
| nextDate optional | 类型:   number optional时间戳(自纪元开始,以毫秒为单位,适合与  new Date()一起使用),表示相应 PlaceOpeningHoursTime 的下一次出现时间。它根据周的PlaceOpeningHoursTime.day、PlaceOpeningHoursTime.time和PlaceResult.utc_offset_minutes计算得出。如果PlaceResult.utc_offset_minutes为undefined,则nextDate将为undefined。 | 
PlacePlusCode 接口
google.maps.places.PlacePlusCode
接口
为地点定义开放位置代码或“Plus 代码”。Plus Codes 可用于在没有街道地址的地点(例如建筑物未编号,或者街道未命名)取代街道地址。
| 属性 | |
|---|---|
| global_code | 类型:   string面积为 1/8000 度 x 1/8000 度的 Plus 代码。例如  "8FVC9G8F+5W"。 | 
| compound_code optional | 类型:   string optional一种Plus Code,表示 1/8000 度乘 1/8000 度的区域,其中前四个字符(区域代码)被舍弃并替换为位置描述。例如  "9G8F+5W Zurich, Switzerland"。如果找不到可缩短代码的合适地区,则会省略此字段。 | 
PlacePhoto 接口
google.maps.places.PlacePhoto
接口
表示地点的照片元素。
| 属性 | |
|---|---|
| height | 类型:   number照片的高度(以像素为单位)。 | 
| html_attributions | 类型:   Array<string>要为此照片显示的提供方文本。 | 
| width | 类型:   number照片的宽度(以像素为单位)。 | 
| 方法 | |
|---|---|
| getUrl | getUrl([opts])参数:   
 返回值:   string返回与指定选项对应的图片网址。 | 
PhotoOptions 接口
google.maps.places.PhotoOptions
接口
定义照片请求选项。
| 属性 | |
|---|---|
| maxHeight optional | 类型:   number optional返回的图片的最大高度(以像素为单位)。 | 
| maxWidth optional | 类型:   number optional返回的图片的最大宽度(以像素为单位)。 | 
PlaceReview 接口
google.maps.places.PlaceReview
接口
表示对地点的单条评价。
| 属性 | |
|---|---|
| author_name | 类型:   string评价者的姓名。 | 
| language | 类型:   string表示相应评价所用语言的 IETF 语言代码。请注意,此代码仅包含主要语言标记,而不包含表示国家或地区的任何辅助标记。例如,所有英语评价都标记为  'en',而不是“en-AU”或“en-UK”。 | 
| profile_photo_url | 类型:   string指向评价者个人资料照片的网址。 | 
| relative_time_description | 类型:   string一个格式化的近期时间字符串,以适合相应语言和国家/地区的形式表示相对于当前时间的评价时间。例如  "a month ago"。 | 
| text | 类型:   string评价的文本。 | 
| time | 类型:   number评价的时间戳,以自纪元开始算起的秒数表示。 | 
|  | 类型:   Array<PlaceAspectRating> optional评价中评分的方面。评分(范围为 0 到 3)。 | 
| author_url optional | 类型:   string optional评价者的个人资料网址。如果评价者的个人资料不可用,则此值为  undefined。 | 
| rating optional | 类型:   number optional相应评价的评分,介于 1.0 到 5.0 之间(含边界值)。 |