经纬志
首页 / OpenLayers / 使用示例

订阅式商业底图接入

用 URL 模板加参数的方式封装 ol.source.XYZ,切换叠加层与透明度,同一结构可直接替换成 Azure Maps 的瓦片地址。

OpenLayers 10.3.1 · 对应官方 azure-maps.html · 更新 2026-10-27
源码与运行效果
运行效果

说明

订阅式底图(Azure Maps、天地图等)都遵循同一套接入方式:一个带 {z}/{x}/{y} 占位符的 URL 模板,加上服务要求的密钥参数,封装成 ol.source.XYZ 再放进 ol.layer.Tile。

示例用 OSM 瓦片地址演示这套结构,模板与版权文字都显式写出来。换成 Azure 时把模板改成 https://atlas.microsoft.com/map/tile?api-version=2024-04-01&tilesetId=microsoft.base.road&zoom={z}&x={x}&y={y}&subscription-key=密钥 即可,其余代码不变;叠加层用 setOpacity() 与 className 做视觉区分。

操作结果
勾选「叠加订阅底图」叠加层出现,带低饱和滤镜
拖动不透明度叠加层透明度在 0 到 1 之间变化

密钥不要硬编码在页面里,生产环境应由后端签发短期 token 或通过代理转发瓦片请求。