我使用 geodjango 来创建和提供我通常在 OpenLayers 中显示为 openLayers.Layer.TMS 的地图图块
我担心任何人都可以在未经许可的情况下获取 Web 服务 URL 并将其插入自己的地图,然后消耗大量服务器的 CPU 并侵犯私有数据所有权。另一方面,我希望无需登录即可公开使用磁贴服务,但只能从我的网站访问。
我认为这种违规行为是可能的吗?如果是,那么保护它的方法是什么?是否可以在客户端浏览器中隐藏 url?
编辑: 您在 OpenLayers 中启动瓦片地图服务的方式是通过可以从客户端浏览器读取的 javascript,如下所示:
tiledLayer = new OpenLayers.Layer.TMS('TMS',
"{{ tmsURL }}1.0/{{ shapefile.id }}/${z}/${x}/${y}.png"
);
将其复制/粘贴到另一个网站并访问 Web 服务数据真的很容易。
如何在 url 中添加 API 密钥并设法定期重新生成它?