街景请求和响应

街景图像请求是一个采用以下格式的 HTTP 网址:

https://maps.googleapis.com/maps/api/streetview?parameters

系统会使用相关请求的参数指定图像。根据网址的标准,所有参数都使用和号字符 (&) 分隔。下面列出了允许的参数及其可能的值。

必需参数

采用以下任一方式:

  • location 可以是文本字符串(例如 Chagrin Falls, OH)或经纬度坐标对 (40.457375,-80.009353),并且应进行网址编码。因此,请先将“City Hall, New York, NY”这样的地址转换为“City+Hall,New+York,NY”,然后再发送请求。Street View Static API 会贴靠到离该位置最近的全景照片。在您提供地址文本字符串时,API 可能会使用其他相机位置来更好地显示指定的位置。如果您提供经纬度坐标,该 API 会在 50 米半径范围内搜索离该位置最近的照片。由于街景图像会定期刷新,并且可能每次拍摄照片的位置都略有差异,因此在图像更新时,您的 location 可能会对应到不同的全景图片。

或者:

  • pano 是特定的全景图片 ID。全景图片可能会随时间更改 ID,因此请勿保留此 ID。请改为保存位置地址或经纬度坐标,以便刷新全景图片 ID。有关详情,请参阅刷新已删除的全景图片 ID

以及:

  • size 用于指定图像的输出大小(以像素为单位)。尺寸指定为 {width}x{height} - 例如,size=600x400 返回一张宽 600 像素、高 400 像素的图片。
  • key 可让您在 Google Cloud 控制台中监控应用的 API 使用情况,并确保 Google 可以在必要时就应用的相关事宜与您联系。如需了解详情,请参阅获取密钥和签名

刷新已删除的全景图片 ID

如果您尝试检索全景图片 ID 时获得了 ZERO_RESULTS 或没有值,则该全景图片 ID 已被删除,需要刷新。

  1. 保存您用于获取全景图片 ID 的位置地址或纬度和经度坐标,以便在需要时刷新。

  2. 当您检测到全景图片 ID 发生更改时,请使用原始位置地址或经纬度坐标再次搜索距离该位置最近的全景图片,并获取新的全景图片 ID。

可选参数

  • signature(推荐使用)是一种数字签名,用于验证使用您的 API 密钥生成请求的所有网站是否均获得了相应授权。不包含数字签名的请求可能会失败。 如需了解详情,请参阅获取密钥和签名

    注意:旧版 Google Maps Platform 专业版方案客户必须提供数字签名。如需了解详情,请参阅专业版方案客户的身份验证参数

  • heading 表示相机的罗盘方向。接受的值范围为 0360(这两个值都表示北方,90 表示东方,180 表示南方)。如果您未指定朝向,系统会计算出一个值,该值将相机从拍摄距离最近的照片的点对准指定的 location
  • fov默认值为 90)用于确定图片的水平视野(以度为单位),允许的最大值为 120。 处理固定尺寸的视口时,与处理固定尺寸的街景图像一样,视野本质上也表示缩放级别,数字越小表示缩放级别越高。


    广阔视野的屏幕截图,显示了水族箱内的天花板、墙壁、地板和水箱窗口。 特写视野屏幕截图,其中显示了水族箱内街景照片的放大细节。
    (左侧:fov=120;右侧:fov=20

  • pitch(默认值为 0),用于指定相机相对于街景拍摄车的向上或向下角度。该角度通常(但并不总)是水平的。正值表示相机向上倾斜(90 度表示相机垂直向上);负值表示相机向下倾斜(-90 度表示相机垂直向下)。
  • radius默认值为 50)用于设置以米为单位的半径,以指定要在指定纬度和经度为中心的全景图片。有效值为非负整数。
  • return_error_code 指示 API 在找不到图片 (404 NOT FOUND) 时或在响应无效请求 (400 BAD REQUEST) 时是否应返回错误代码。有效值为 truefalse。如果设置为 true,则系统会返回一条错误消息来代替通用的灰色图片。这样就无需进行单独的调用来检查图片可用性。
  • source默认值为 default)将街景搜索限制为选定的来源。有效值包括:
    • default,使用默认街景来源;搜索范围不限于特定来源。
    • outdoor,仅搜索室外全景图片。室内照片集不会显示在搜索结果中。请注意,指定位置可能不存在室外全景图片。另请注意,仅当能够确定位于室内还是室外的全景图片时,搜索才会返回这些全景图片。例如,不会返回 PhotoSphere,因为照片是在室内还是室外是未知的。

这是一个示例请求。

https://maps.googleapis.com/maps/api/streetview?size=600x300&location=46.414382,10.013988&heading=151.78&pitch=-0.76&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
一张街道观景点照片的屏幕截图,其中显示了电气化铁轨。

无图像可用

对于没有街景图像的地点,Street View Static API 会返回一张灰色通用图片,并显示文本“Sorry, we have no images here.”,如下例所示:

在指定位置没有可用的图像时显示的一般图片的屏幕截图。背景是浅棕色的,并且显示了“抱歉,此处没有任何图像”的文字。
图:指定位置无可用图像时显示的通用图像。

仅显示有效图片

为避免显示通用图片,并确保您的网页仅显示有效的 Street View Static API 图片,请遵循以下建议:

  • return_error_code 参数设置为 true。如果指定位置没有可用的图片,这会导致 Street View Static API 返回 404 NOT FOUND 错误来代替通用灰色图片。
  • 在发送请求之前,请求街景图像元数据以确定指定位置是否有可用图像。