将会话令牌与 Map Tiles API 搭配使用

会话令牌是 UUID) 在 REST 调用中识别 session - 一个 一系列相关的消息往来您必须在所有 请求 2D 图块和街景图像。 您可以将其作为 session 参数值的形式追加到所有请求网址后面。

在 Map Tiles API 中,会话令牌表示一组定义的 显示选项。这意味着您不必将一组显示选项 。您可以在多个客户端中使用同一会话令牌。 会话令牌目前的有效期为两周,自 但这一点可能会发生变化您可以随时查看 获得会话令牌。expiry

会话令牌请求

要请求会话令牌,请向 createSession 发送 HTTPS POST 请求 端点,如以下示例所示。您必须使用 Content-Type: application/json 标头。

curl -X POST -d '{
  "mapType": "streetview",
  "language": "en-US",
  "region": "US"
}' \
-H 'Content-Type: application/json' \
"https://tile.googleapis.com/v1/createSession?key=YOUR_API_KEY"

必填字段

mapType

基本地图的类型。这个值可以是以下值之一:

roadmap
标准的 Google 地图绘制地图图块。
satellite
卫星图像。
terrain
地形图像。选择 terrain 作为地图类型时,您还必须包含 layerRoadmap 图层类型(在可选字段部分中介绍)。
streetview
街景全景图片。如需了解详情,请参阅 街景图块
language

一个 IETF 语言标记 ,用于指定在图块上显示信息时所用的语言。对于 例如,en-US 用于指定美国的英语。

region

通用语言区域数据代码库 表示实际所处位置的地区标识符(两个大写字母) 用户的角色。例如 US

可选字段

imageFormat
指定要返回的文件格式。有效值为 jpegpng。 JPEG 文件不支持透明度,因此不建议将其用于图块叠层。如果您不指定 imageFormat,则对于 系统会自动选择功能块。
scale

放大地图元素(例如道路标签)的大小,同时保持默认图块的图块大小和覆盖区域。扩大规模 可减少地图上的标签数量,从而减少杂乱无章的情况。以下值是有效的 scale 值:

  • scaleFactor1x:默认值。
  • scaleFactor2x:将标签大小加倍并移除次要特征标签。
  • scaleFactor4x:将标签大小变为原来的四倍并移除次要特征标签。

以下示例展示了缩放地图元素的效果。

缩放系数 1x 缩放系数 2x
显示缩放比例 1x 的地图 显示缩放比例为 2x 的地图
highDpi
指定是否返回高分辨率图块。如果缩放比例为 增大了,highDpi 用于增大图块的大小。通常 增加缩放比例可将生成的图块放大为 尺寸相同,这会降低画质。使用 highDpi 时,生成的大小也会 同时保持画质DPI 代表每英寸点数,高 DPI 是指 图块在每英寸的点数中会比正常值更多。如果为 true,则 将 x 和 y 尺寸中的像素数乘以比例 系数(即 2 倍或 4 倍)。功能块的覆盖区域保持不变。 此参数仅适用于 2 倍或 4 倍的 scale 值。它对 1 倍缩放图块。
缩放系数 1x 缩放比例 2x 高 DPI
地图以常规分辨率显示 以 2 倍高 DPI 分辨率显示的地图
layerTypes

值数组,用于指定添加到地图的图层类型。有效 值为:

layerRoadmap
如果您将地图类型指定为 terrain,则必须提供此值。也可以根据需要叠加到 satellite 地图类型上。对路线图图块没有影响。
layerStreetview
用蓝色轮廓线显示已启用街景的街道和地点 地图。
layerTraffic
显示当前路况。
styles

一组 JSON 样式对象,用于指定 地图项(如道路、公园和建筑物区域)。样式设置用于 自定义标准 Google 基本地图。styles 参数仅在 地图类型为 roadmap。有关完整的样式语法,请参见 样式参考

overlay

一个布尔值,用于指定是否应将 layerTypes 渲染为单独的叠加层,或与基础图像合并。时间 true,则不会显示基本地图。如果您尚未定义任何 layerTypes, 系统会忽略此值。

例如,请求包含 layerRoadmap 图层的 satellite 地图类型,以及 将 overlay 设置为 false 会生成相当于 hybrid 地图类型的图块 用于 Maps JavaScript API(左图)。overlay 设为 true 的相同地图和图层类型将使带地图叠层并针对叠加操作进行相应格式设置的透明图块叠加在卫星图像上(右图)。

overlay:false overlay:true
叠加层设置为 false 叠加层设置为 true

以下 JSON 是典型请求正文示例,其中包含 必填字段和选填字段

{
  "mapType": "satellite",
  "language": "en-US",
  "region": "us",
  "layerTypes": [ "layerRoadmap", "layerStreetview" ],
  "overlay":  true,
  "scale": "scaleFactor1x",
  "styles": [
    {
      "stylers": [
        { "hue": "#00ffe6" },
        { "saturation": -20 }
      ]
    },{
      "featureType": "road",
      "elementType": "geometry",
      "stylers": [
        { "lightness": 100 },
        { "visibility": "simplified" }
      ]
    }
  ]
}

此示例提供了一个适合与卫星图像一起播放的叠加层 图像。此示例同时包含路线图和街景叠加层。通过 显示的地图会以英语显示名称和数据, 是美国的通用语言

apiOptions:一组值,用于指定要应用的其他选项。 支持的选项包括:

  • MCYJ5E517XR2JC - 选择启用 新地图 style。在选择接受期内,您的请求将获得现有的 样式。

会话令牌响应

下面的 JSON 是响应正文示例。

{
  "session": "IgAAAHGU9jnAU4KOAfwY3Bcd6eH_WxQsyocSBAdUnAr9pnvTTNXtF9c_27RBo94ytEXTDg",
  "expiry": "1361828036",
  "tileWidth": 256,
  "tileHeight": 256,
  "imageFormat": "png"
}

以下列表包含响应正文中字段的定义。

session
您必须在所有 Map Tiles API 中添加的会话令牌值 请求。
expiry
一个字符串,其中包含令牌到期的时间(与公元纪年之间相隔的秒数)。会话令牌的有效期为自创建起的两周,但此政策可能会随时变更,恕不另行通知。
tileWidth
图块的宽度(以像素为单位)。
tileHeight
图块的高度(以像素为单位)。
imageFormat
图片格式,可以是 pngjpeg