地点照片(新)

选择平台Android iOS Web 服务

地点照片(新) 服务是一种只读 API,允许您向同一网页 图像内容。地点照片服务 您可以访问存储在 Places 数据库中的数百万张照片。

当您使用“地点详情”“附近搜索”或“文本搜索”请求获取地点信息时, 您还可以请求获取相关照片内容的照片资源。借助照片服务 然后,您可以访问引用的照片,并将图片调整为最适合您的 应用。

利用 API Explorer,您可以发出实时请求,从而熟悉 API 和 API 选项:

试试看!

地点照片请求

地点照片请求是对网址的 HTTP GET 请求,格式如下:
https://places.googleapis.com/v1/NAME/media?key=API_KEY&PARAMETERS

在需要提供以下参数的情况下:

  • NAME 包含照片的资源名称。
  • API_KEY 包含 API 密钥。
  • PARAMETERS 包含 maxHeightPx 参数、 maxWidthPx 参数或同时指定两者。

必需参数和可选参数的完整列表如下所述。

必需参数

照片名称

唯一标识照片的字符串标识符。照片名称从 地点详情(新)附近搜索(新)、 或文本搜索(新)请求, 在 photos[] 数组每个元素的 name 属性中设置。

如需查看示例,请参阅获取照片名称

maxHeightPx 和 maxWidthPx

指定图片所需的最大高度和宽度(以像素为单位)。如果图片较小 则返回原始图片。如果图片尺寸不大 它将被调整为匹配两个维度中的较小者,并将其限制为原始大小 宽高比。maxheight 和 maxwidth 属性都接受 1 到 4800 之间的整数。

您必须指定 maxHeightPx 和/或 maxWidthPx

可选参数

skipHttpRedirect

如果为 false(默认值),请对图片执行 HTTP 重定向以返回图片。 如果为 true,则跳过重定向并返回包含图片详细信息的 JSON 响应。 例如:

{
  "name": "places/ChIJj61dQgK6j4AR4GeTYWZsKWw/photos/Aaw_FcKly0DEv3EWmDJyHiEqXIP5mowOc99lN1GzBun6KHH52AZ5fFA/media",
  "photoUri": "https://lh3.googleusercontent.com/a-/AD_cFT-b=s100-p-k-no-mo"
}

对于非 HTTP 请求,此选项会被忽略。

获取照片名称

所有对地点照片服务的请求都必须包含 照片资源名称,在对附近搜索、文本搜索或 “地点详情”请求。如果存在photos[] 有相关的照片内容。

photo[] 的每个元素都包含以下字段:

  • name - 一个包含照片资源名称的字符串,当您执行该操作时 执行照片请求此字符串的格式如下:

    places/PLACE_ID/photos/PHOTO_RESOURCE
  • heightPx - 图片的最大高度,以像素为单位。
  • widthPx - 图片的最大宽度,以像素为单位。
  • authorAttributions[] - 任何必需的提供方说明。本次 字段始终存在,但可能为空。

照片服务返回的照片来自各种位置, 包括企业主和用户贡献的照片。在大多数情况下 照片可以在不注明提供方的情况下使用,或具有必需的提供方说明 作为图片的一部分添加不过,如果返回的 photo 元素 在 authorAttributions 字段中包含值,则必须添加 在应用中显示图片的位置添加额外提供方说明。

以下示例展示了包含 photos 的“地点详情”请求, 字段掩码,以便响应在响应中包含 photos[] 数组:

curl -X GET \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: id,displayName,photos" \
https://places.googleapis.com/v1/places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E
响应中的 photos[] 数组示例如下所示。
    ...
    "photos" : [
      {
        "name": "places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E/photos/AUacShh3_Dd8yvV2JZMtNjjbbSbFhSv-0VmUN-uasQ2Oj00XB63irPTks0-A_1rMNfdTunoOVZfVOExRRBNrupUf8TY4Kw5iQNQgf2rwcaM8hXNQg7KDyvMR5B-HzoCE1mwy2ba9yxvmtiJrdV-xBgO8c5iJL65BCd0slyI1",
        "widthPx": 6000,
        "heightPx": 4000,
        "authorAttributions": [
          {
            "displayName": "John Smith",
            "uri": "//maps.google.com/maps/contrib/101563",
            "photoUri": "//lh3.googleusercontent.com/a-/AD_cFT-b=s100-p-k-no-mo"
          }
        ]
      },    ...

请求地点照片

以下示例请求使用资源 name 返回图片,调整图片大小 高度和宽度不超过 400 像素:

https://places.googleapis.com/v1/places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E/photos/AUacShh3_Dd8yvV2JZMtNjjbbSbFhSv-0VmUN-uasQ2Oj00XB63irPTks0-A_1rMNfdTunoOVZfVOExRRBNrupUf8TY4Kw5iQNQgf2rwcaM8hXNQg7KDyvMR5B-HzoCE1mwy2ba9yxvmtiJrdV-xBgO8c5iJL65BCd0slyI1/media?maxHeightPx=400&maxWidthPx=400&key=API_KEY

响应 一个成功的地点照片请求就是一个图像。 图片的类型取决于最初提交的照片的类型。

如果您的请求超出了可用配额,服务器会返回 HTTP 403 状态,并显示下图以指示配额已 :

“超出配额”图片

如果服务器无法理解您的请求,就会返回 HTTP 400 状态,表明请求无效。导致出现 无效请求包括:

试试看!

借助 API Explorer,您可以发出示例请求, 您可以熟悉 API 和 API 选项。

如需发出请求,请执行以下操作:

  1. 选择 API 图标 展开 API Explorer。, 。
  2. name 参数设为:
    places/PLACE_ID/photos/PHOTO_RESOURCE/media
  3. skipHttpRedirect 设置为 true,以便请求返回 JSON 响应。默认情况下,请求会返回图片,而 API Explorer。
  4. 选择执行按钮。在弹出式窗口中,选择您要更改 用于发出请求
  5. 在 API Explorer 面板中,选择“展开”图标, 展开 API Explorer。 用于展开 API Explorer 窗口。